-
Notifications
You must be signed in to change notification settings - Fork 381
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Profile disabled on alpine 3.13 with a runtime error loading the native extension #2222
Comments
Hey @rwc9u, thanks for the report and sorry for the issue! From your log message, the failure is caused by the wrong version of In particular, inside the
But in your case, the glibc variant is getting picked, which is incorrect, and leads to the issue. I'm still investigating what may cause this, I'll update this ticket once I know more :) |
Found it! It seems to be a bug in rubygems 😅 I was able to reproduce the issue using the
With the old version of rubygems shipped, Let me know if upgrading rubygems fixes the issue for you! I'll still try to investigate if we can detect when rubygems is buggy and still pick the right variant. EDIT: You'll need to install/reinstall |
Thx so much for the quick response. |
Happy to help! I actually found a way to work around this issue directly in the Thus, either one of:
and then installing/reinstalling ddtrace should get you over the issue. Feel free to reach out if there's anything else we can help with :) |
* Fix issue with old rubygems not detecting musl linux properly Old versions of rubygems (for instance 3.0.3) don't properly detect alternative libc implementations on Linux; in particular for our case, they don't detect musl. (For reference, Rubies older than 2.7 may have shipped with an affected version of rubygems). In such cases, we fall back to use RbConfig::CONFIG['arch'] instead. Why not use `RbConfig::CONFIG['arch']` always? Because `Gem::Platform.local.to_s` does some normalization we want in other situations -- for instance, it turns `x86_64-linux-gnu` to `x86_64-linux`. So for now we only add this workaround in a specific situation where we actually know it is wrong. See also rubygems/rubygems#2922 and rubygems/rubygems#4082 Fixes DataDog/dd-trace-rb#2222 * Bump libdatadog minor version in preparation for release I'm planning to release 0.7.0.1.1 with the musl fix. This will be automatically picked up by customers using the currently-released version of dd-trace-rb (1.3.0). * Fix file open permissions / directory creation Otherwise this breaks in Linux due to the rest of the spec flow. * Remove redundant directory creation in spec
Current behaviour
See the following in our log after upgrading ddtrace from 0.49 to 1.3
When I do some additional debugging on our pod I see the following
I'm thinking there are some additional packages I need to run under alpine, but not sure which ones?
Environment
The text was updated successfully, but these errors were encountered: