From: "jeremyevans0 (Jeremy Evans)" Date: 2021-12-23T17:09:47+00:00 Subject: [ruby-core:106788] [Ruby master Bug#18409] Crash (free(): invalid pointer) if LD_PRELOAD doesn't explicitly include libjemalloc.so.2 Issue #18409 has been updated by jeremyevans0 (Jeremy Evans). Backport changed from 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN to 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: REQUIRED Status changed from Open to Closed Since it looks like this is fixed in the master branch, closing and marking for backport to Ruby 3.0 (not sure if it is needed on Ruby 2.7). ---------------------------------------- Bug #18409: Crash (free(): invalid pointer) if LD_PRELOAD doesn't explicitly include libjemalloc.so.2 https://bugs.ruby-lang.org/issues/18409#change-95491 * Author: itay-grudev (Itay Grudev) * Status: Closed * Priority: Normal * ruby -v: ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x86_64-linux] * Backport: 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: REQUIRED ---------------------------------------- I recently installed Ruby 3.0.2 using rbenv with: ``` RUBY_CONFIGURE_OPTS='--with-jemalloc' rbenv install 3.0.2 ``` After running our app it always crashed with: ``` free(): invalid pointer [1] 51364 IOT instruction (core dumped) bundle exec rails assets:precompile ``` I also tried upgrading to `3.0.3` with no success. After researching the bug a lot and lots of failed attempt to track it down I stumbled upon this report: https://github.com/grpc/grpc/issues/25450 that recommended trying: ``` LD_PRELOAD=$LD_PRELOAD:/lib/x86_64-linux-gnu/libjemalloc.so.2 bundle exec rails assets:precompile ``` That seems to have worked, but that can't be the proper solution in production. Surely it shouldn't be required. -- https://bugs.ruby-lang.org/ Unsubscribe: