rubyjs / mini_racer

Minimal embedded v8
MIT License
598 stars 93 forks source link

mini_racer 0.12.0 Segmentation fault on x86_64-linux with libv8-node 21.7.2.0 #300

Closed D-system closed 2 months ago

D-system commented 6 months ago

Hello the team

Thank you for the update to libv8-node 21.7.2.0 yesterday. I wanted to report an error. Setup:

/home/circleci/ec/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:228: [BUG] Segmentation fault at 0x00007f3f10a31008
ruby 3.2.3 (2024-01-18 revision 52bb2ac0a6) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0048 p:---- s:0301 e:000300 CFUNC  :eval_unsafe
c:0047 p:0009 s:0295 e:000294 BLOCK  /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:228
c:0046 p:0010 s:0292 e:000291 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:348
c:0045 p:0008 s:0281 e:000280 BLOCK  /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:227 [FINISH]
c:0044 p:---- s:0278 e:000277 CFUNC  :synchronize
c:0043 p:0045 s:0274 e:000273 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:225
c:0042 p:0007 s:0267 e:000266 BLOCK  /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/mini_racer_runtime.rb:11
c:0041 p:0003 s:0264 e:000262 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/mini_racer_runtime.rb:67
c:0040 p:0035 s:0256 e:000255 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/mini_racer_runtime.rb:10 [FINISH]
c:0039 p:---- s:0249 e:000248 CFUNC  :new
c:0038 p:0038 s:0242 e:000241 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/runtime.rb:68
c:0037 p:0013 s:0236 e:000235 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/module.rb:27
c:0036 p:0020 s:0230 e:000229 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser.rb:189
c:0035 p:0065 s:0223 e:000221 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser.rb:229
SEGV received in SEGV handler
c:0034 p:0014 s:0212 e:000211 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser.rb:181
c:0033 p:0029 s:0206 e:000205 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser/compressor.rb:36
c:0032 p:0007 s:0198 e:000197 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser/compressor.rb:23
c:0031 p:0047 s:0193 e:000192 METHOD /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/processor_utils.rb:84
c:0030 p:0013 s:0185 e:000184 BLOCK  /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/processor_utils.rb:66 [FINISH]
c:0029 p:---- s:0180 e:000179 CFUNC  :reverse_each
c:0028 p:0035 
Received "aborted" signal

It does work on Darwin Kernel Version 23.2.0 arm64 (Mac on arm) that compile from source.

The error is from eval -> eval_unsafe, so I suspect it is an issue with the libv8-node https://github.com/rubyjs/mini_racer/blob/5b2a25cdb4c84c7500ed47639ef8c664f5bac26d/lib/mini_racer.rb#L228

tisba commented 6 months ago

Hey @D-system. A couple of question hopefully helping to narrow the issue down

D-system commented 6 months ago

I don't think jemalloc is enabled:

$ ruby -r rbconfig -e "puts RbConfig::CONFIG['MAINLIBS']"
-lz -lrt -lrt -ldl -lcrypt -lm -lpthread

Even by using the LD_PRELOAD, it does not seems to work:

$ LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2  ruby -r rbconfig -e "puts RbConfig::CONFIG['MAINLIBS']"
-lz -lrt -lrt -ldl -lcrypt -lm -lpthread

# Checking the directory
$ ls -l /usr/lib/x86_64-linux-gnu/libjemalloc*
-rw-r--r-- 1 root root 1119814 Jan 24  2022 /usr/lib/x86_64-linux-gnu/libjemalloc.a
-rw-r--r-- 1 root root 1119970 Jan 24  2022 /usr/lib/x86_64-linux-gnu/libjemalloc_pic.a
lrwxrwxrwx 1 root root      16 Jan 24  2022 /usr/lib/x86_64-linux-gnu/libjemalloc.so -> libjemalloc.so.2
-rw-r--r-- 1 root root  744440 Jan 24  2022 /usr/lib/x86_64-linux-gnu/libjemalloc.so.2

Let me see if I can make a new app and get the same error.


I didn't realized there was a more debug output:

``` -- Ruby level backtrace information ---------------------------------------- /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in `block in create_worker' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in `catch' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in `block (2 levels) in create_worker' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in `loop' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in `block (3 levels) in create_worker' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in `run_task' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/promise.rb:564:in `block in realize' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:22:in `execute' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `synchronize' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `synchronize' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `block in synchronize' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:24:in `block in execute' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/manifest.rb:125:in `block (2 levels) in find' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/manifest.rb:125:in `to_a' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/manifest.rb:125:in `each' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/base.rb:88:in `find_all_linked_assets' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/base.rb:81:in `find_asset' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/cached_environment.rb:44:in `load' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/map.rb:206:in `fetch_or_store' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/map.rb:187:in `fetch' /home/circleci/repo/vendor/ruby/3.2.0/gems/concurrent-ruby-1.2.3/lib/concurrent-ruby/concurrent/map.rb:207:in `block in fetch_or_store' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/cached_environment.rb:44:in `block in load' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/loader.rb:43:in `load' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/loader.rb:339:in `fetch_asset_from_dependency_cache' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/loader.rb:59:in `block in load' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/loader.rb:184:in `load_from_unloaded' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/processor_utils.rb:65:in `call_processors' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/processor_utils.rb:65:in `reverse_each' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/processor_utils.rb:66:in `block in call_processors' /home/circleci/repo/vendor/ruby/3.2.0/gems/sprockets-4.2.1/lib/sprockets/processor_utils.rb:84:in `call_processor' /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser/compressor.rb:23:in `call' /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser/compressor.rb:36:in `call' /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser.rb:181:in `compile_with_map' /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser.rb:229:in `run_terserjs' /home/circleci/repo/vendor/ruby/3.2.0/gems/terser-1.2.2/lib/terser.rb:189:in `context' /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/module.rb:27:in `compile' /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/runtime.rb:68:in `compile' /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/runtime.rb:68:in `new' /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/mini_racer_runtime.rb:10:in `initialize' /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/mini_racer_runtime.rb:67:in `translate' /home/circleci/repo/vendor/ruby/3.2.0/gems/execjs-2.9.1/lib/execjs/mini_racer_runtime.rb:11:in `block in initialize' /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:225:in `eval' /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:225:in `synchronize' /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:227:in `block in eval' /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:348:in `timeout' /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:228:in `block (2 levels) in eval' /home/circleci/repo/vendor/ruby/3.2.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:228:in `eval_unsafe' -- Machine register context ------------------------------------------------ RIP: 0x00007f97ea8d24e7 RBP: 0x00007f977fefa220 RSP: 0x00007f977fefa1e0 RAX: 0x00007f97edbd1000 RBX: 0x00007f96ec003000 RCX: 0x0000000000001000 RDX: 0x0000000000002127 RDI: 0x00007f96ec003000 RSI: 0x000000000003c000 R8: 0x0000000000040000 R9: 0x00007f977831dd10 R10: 0x00007f977831fc20 R11: 0x8bdbe29ebe0b09bc R12: 0x0000000000002000 R13: 0x00007f97edbb8000 R14: 0x000000000003c000 R15: 0x00005597131dd5a0 EFL: 0x0000000000010202 -- C level backtrace information ------------------------------------------- SEGV received in SEGV handler ```
D-system commented 6 months ago

I made a brand new Rails 6.1.7.7 app I got the same error with those changes:

Note: it does precompile the files then seg fault.

``` $ bundle ; ./bin/rails assets:clobber assets:precompile Bundle complete! 18 Gemfile dependencies, 84 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed. I, [2024-04-23T18:59:24.147478 #10018] INFO -- : Removed /home/circleci/new_rails_app/public/assets yarn install v1.22.19 [1/4] Resolving packages... success Already up-to-date. Done in 0.42s. I, [2024-04-23T18:59:25.739888 #10018] INFO -- : Writing /home/circleci/new_rails_app/public/assets/manifest-b4bf6e57a53c2bdb55b8998cc94cd00883793c1c37c5e5aea3ef6749b4f6d92b.js I, [2024-04-23T18:59:25.740896 #10018] INFO -- : Writing /home/circleci/new_rails_app/public/assets/manifest-b4bf6e57a53c2bdb55b8998cc94cd00883793c1c37c5e5aea3ef6749b4f6d92b.js.gz I, [2024-04-23T18:59:25.741133 #10018] INFO -- : Writing /home/circleci/new_rails_app/public/assets/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.css I, [2024-04-23T18:59:25.742186 #10018] INFO -- : Writing /home/circleci/new_rails_app/public/assets/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.css.gz ./bin/rails: [BUG] Segmentation fault at 0x00007fb3f7901008 ruby 3.2.3 (2024-01-18 revision 52bb2ac0a6) [x86_64-linux] -- Control frame information ----------------------------------------------- c:0001 p:0000 s:0003 E:0011f0 DUMMY [FINISH] -- Machine register context ------------------------------------------------ RIP: 0x00007fb3f4602745 RBP: 0x00007ffea2fe8d10 RSP: 0x00007ffea2fe8c80 RAX: 0x00007fb3f7901000 RBX: 0x00007fb374bc0000 RCX: 0x000000000003cfff RDX: 0x000000000003bfff RDI: 0x00007fb374bc3000 RSI: 0x000000000003c000 R8: 0x00007fb3ec07e680 R9: 0x0000000000000000 R10: 0x00007fb3fe254f70 R11: 0x69454a582143dfed R12: 0x00007fb3ec03dd08 R13: 0x00007fb374bc3000 R14: 0x0000555dc5c6e350 R15: 0x000000000003c000 EFL: 0x0000000000010202 -- C level backtrace information ------------------------------------------- /usr/local/lib/libruby.so.3.2(rb_print_backtrace+0xd) [0x7fb3fe90494f] /home/circleci/ruby/vm_dump.c:785 /usr/local/lib/libruby.so.3.2(rb_vm_bugreport) /home/circleci/ruby/vm_dump.c:1080 /usr/local/lib/libruby.so.3.2(rb_bug_for_fatal_signal+0xf4) [0x7fb3fe6fb664] /home/circleci/ruby/error.c:813 /usr/local/lib/libruby.so.3.2(sigsegv+0x4d) [0x7fb3fe853f5d] /home/circleci/ruby/signal.c:964 /lib/x86_64-linux-gnu/libc.so.6(0x7fb3fe285520) [0x7fb3fe285520] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f4602745) [0x7fb3f4602745] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f4e18bbd) [0x7fb3f4e18bbd] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f4e18c16) [0x7fb3f4e18c16] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f4e60288) [0x7fb3f4e60288] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f4e08210) [0x7fb3f4e08210] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f4e07ffe) [0x7fb3f4e07ffe] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f4dffe15) [0x7fb3f4dffe15] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f491cba1) [0x7fb3f491cba1] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f491c619) [0x7fb3f491c619] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f44abaa0) [0x7fb3f44abaa0] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(0x7fb3f44ae2c2) [0x7fb3f44ae2c2] /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(free_context_raw+0x137) [0x7fb3f44abc4f] /home/circleci/.rubygems/gems/mini_racer-0.12.0/ext/mini_racer_extension/mini_racer_extension.cc:1461 /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(free_context+0xec) [0x7fb3f44abde5] /home/circleci/.rubygems/gems/mini_racer-0.12.0/ext/mini_racer_extension/mini_racer_extension.cc:1489 /home/circleci/.rubygems/extensions/x86_64-linux/3.2.0/mini_racer-0.12.0/mini_racer_extension.so(deallocate+0x24) [0x7fb3f44abea0] /home/circleci/.rubygems/gems/mini_racer-0.12.0/ext/mini_racer_extension/mini_racer_extension.cc:1516 /usr/local/lib/libruby.so.3.2(run_final+0xf) [0x7fb3fe71dea2] /home/circleci/ruby/gc.c:4399 /usr/local/lib/libruby.so.3.2(finalize_list) /home/circleci/ruby/gc.c:4418 /usr/local/lib/libruby.so.3.2(finalize_deferred_heap_pages) /home/circleci/ruby/gc.c:4447 /usr/local/lib/libruby.so.3.2(rb_objspace_call_finalizer+0x350) [0x7fb3fe72a4c0] /home/circleci/ruby/gc.c:4584 /usr/local/lib/libruby.so.3.2(rb_ec_finalize+0x2a) [0x7fb3fe706c31] /home/circleci/ruby/eval.c:168 /usr/local/lib/libruby.so.3.2(rb_ec_cleanup) /home/circleci/ruby/eval.c:262 /usr/local/lib/libruby.so.3.2(ruby_run_node+0x9d) [0x7fb3fe706e7d] /home/circleci/ruby/eval.c:330 /usr/local/bin/ruby(rb_main+0x21) [0x555dc3f48187] ./main.c:38 /usr/local/bin/ruby(main) ./main.c:57 /lib/x86_64-linux-gnu/libc.so.6(0x7fb3fe26cd90) [0x7fb3fe26cd90] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7fb3fe26ce40] [0x555dc3f481d5] -- Other runtime information ----------------------------------------------- * Loaded script: ./bin/rails * Loaded features: 0 enumerator.so 1 thread.rb 2 fiber.so 3 rational.so 4 complex.so 5 ruby2_keywords.rb 6 /usr/local/lib/ruby/3.2.0/x86_64-linux/enc/encdb.so 7 /usr/local/lib/ruby/3.2.0/x86_64-linux/enc/trans/transdb.so 8 /usr/local/lib/ruby/3.2.0/x86_64-linux/rbconfig.rb 9 /usr/local/lib/ruby/site_ruby/3.2.0/rubygems/compatibility.rb 10 /usr/local/lib/ruby/site_ruby/3.2.0/rubygems/defaults.rb 11 /usr/local/lib/ruby/site_ruby/3.2.0/rubygems/deprecate.rb 12 /usr/local/lib/ruby/site_ruby/3.2.0/rubygems/errors.rb 13 /usr/local/lib/ruby/site_ruby/3.2.0/rubygems/unknown_command_spell_checker.rb [...] ```
D-system commented 6 months ago

I also tried the same project with mini_racer 0.9. It works.

$ bundle ; ./bin/rails assets:clobber assets:precompile
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies...
Fetching libv8-node 18.19.0.0 (x86_64-linux) (was 21.7.2.0)
Installing libv8-node 18.19.0.0 (x86_64-linux) (was 21.7.2.0)
Fetching mini_racer 0.9.0 (was 0.12.0)
Installing mini_racer 0.9.0 (was 0.12.0) with native extensions
Bundle complete! 18 Gemfile dependencies, 84 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
I, [2024-04-23T19:04:10.030111 #10198]  INFO -- : Removed /home/circleci/new_rails_app/public/assets
yarn install v1.22.19
[1/4] Resolving packages...
success Already up-to-date.
Done in 0.37s.
I, [2024-04-23T19:04:11.476483 #10198]  INFO -- : Writing /home/circleci/new_rails_app/public/assets/manifest-b4bf6e57a53c2bdb55b8998cc94cd00883793c1c37c5e5aea3ef6749b4f6d92b.js
I, [2024-04-23T19:04:11.477493 #10198]  INFO -- : Writing /home/circleci/new_rails_app/public/assets/manifest-b4bf6e57a53c2bdb55b8998cc94cd00883793c1c37c5e5aea3ef6749b4f6d92b.js.gz
I, [2024-04-23T19:04:11.477738 #10198]  INFO -- : Writing /home/circleci/new_rails_app/public/assets/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.css
I, [2024-04-23T19:04:11.478602 #10198]  INFO -- : Writing /home/circleci/new_rails_app/public/assets/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.css.gz
$
D-system commented 6 months ago

It seems sprocket is used by default if no other assets pipeline exists.

The Gemfile without the comments

source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }

ruby '3.2.3'

gem 'rails', '~> 6.1.7', '>= 6.1.7.7'
gem 'sqlite3', '~> 1.4'
gem 'puma', '~> 5.0'
gem 'sass-rails', '>= 6'
gem 'turbolinks', '~> 5'
gem 'jbuilder', '~> 2.7'

gem "bootstrap", "~> 4.3"    # <- the problem
gem "mini_racer", "~> 0.9.0" # <- added

gem 'bootsnap', '>= 1.4.4', require: false

group :development, :test do
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
end

group :development do
  gem 'web-console', '>= 4.1.0'
  gem 'rack-mini-profiler', '~> 2.0'
  gem 'listen', '~> 3.3'
  gem 'spring'
end

group :test do
  gem 'capybara', '>= 3.26'
  gem 'selenium-webdriver', '>= 4.0.0.rc1'
  gem 'webdrivers'
end

gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
SamSaffron commented 6 months ago

@lloeki this looks urgent , should we roll out a release that puts us back at an earlier version while we work this out ?

SamSaffron commented 6 months ago

@D-system does this repro in Linux as well

D-system commented 6 months ago

@SamSaffron it's all tested inside the CircleCI image linked above. So, it's an Ubuntu based linux on x86_64.

lloeki commented 6 months ago

should we roll out a release that puts us back at an earlier version while we work this out ?

So the idea would be to have 0.12.1 be 0.9.0? That would be odd.

lloeki commented 6 months ago

I'll try a repro.

D-system commented 6 months ago

The official ruby:3.2.3 Docker image does not have that problem. Trying with cimg/ruby:3.2.3-node on my local machine (instead of their data centers)

tisba commented 6 months ago

I'm not able to reproduce yet, can't spend much time on it right now though.

The product I'm working on in my day job is using docker images based on the ruby:3.3.0 and we have an extensive test suite with lots of JavaScript that is evaluated by mini_racer. It works with 0.12.0 on x86 and aarch64 (both linux) just fine, I also have no issues on macOS 14.4.1 (arm). Running directly on x86 without Docker in Github Actions is also fine.

🤔

D-system commented 6 months ago

I tried with cimg/ruby:3.2.3-node as base image with --platform=x86_64, I was not able to reproduce the problem. eg: FROM --platform=x86_64 cimg/ruby:3.2.3-node

I'm not able to reproduce the issue in a local docker either.

lloeki commented 6 months ago

LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2 ruby -r rbconfig -e "puts RbConfig::CONFIG['MAINLIBS']"

LD_PRELOAD wouldn't change RbConfig::CONFIG['MAINLIBS'] output, it'd just forcefully inject jemalloc symbols into it.

In any case it appears that RbConfig::CONFIG['MAINLIBS'] doesn't contain anything about jemalloc anyway, even when statically built against jemalloc.

I'm not able to reproduce the issue in a local docker either.

I couldn't reproduce it either inside that x86_64 image: test suite passes, even when artificially stressing libv8 by throwing copious amounts of quickly hacked JS code processing to it (granted it was a real quick test).

SamSaffron commented 6 months ago

@D-system any chance you can create a container that repros this consistently. Then we can docker run <SOMETHING> and have it crash?

fjl82 commented 6 months ago

I just wanted to add another case of this issue. I tried to update yesterday from 0.8 to 0.12 and started getting segfaults. I don't use docker or any version managers, just the system's 3.0.2p107 (the default ruby) on Ubuntu 22.04. This is on rails 7.0.8.1 with libv8 21.7.2.0. I've reverted to 0.8 and libv8 18.16.0.0 for now. I'm not using jemalloc (I have no idea what it is, and the mentioned libraries are not on my system). If you need any info or need anything tested let me know, but I don't want to figure out how to build or use docker images (have no interest in that).

tomhughes commented 6 months ago

I also saw it yesterday when upgrading from 0.9 to 0.12 both on Fedora 40 with ruby 3.3.0 and also on Ubuntu 22.04 with ruby 3.0.2p107.

lloeki commented 6 months ago

Thanks for the additional reports. Is it Sprockets-related as well?

tomhughes commented 6 months ago

It was using rails with sprockets yes, specifically using https://rubygems.org/gems/rtlcss in the sprockets chain which uses mini_racer to run https://www.npmjs.com/package/rtlcss on CSS files.

fjl82 commented 6 months ago

I am using sprockets, but I had not checked whether it's involved or not. I first got these errors when rendering a js response to an ajax request, and also saw them when shutting down the server (running puma).

D-system commented 6 months ago

@SamSaffron I was not able to reproduce on my local host or local docker yesterday. I will give a new try tomorrow.

bf4 commented 6 months ago

We were getting this on 0.9.0 -> 0.12.0 (production only) on Heroku on the '20' image with Ruby 3.3.0 and jemalloc and node v20.9.0

I did see this in a prod console, though may not be related

WARNING: V8 isolate was interrupted by Ruby, it can not be disposed and memory will not be reclaimed till the Ruby process exits.

and looking at prod crash logs

/app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:183: [BUG] Segmentation fault at 0x0000000000000000

we're just using this to run embedded javascript

and have this slightly edited log ``` 9 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/rubygems/compatibility.rb 8 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/rbconfig.rb 7 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/trans/transdb.so 6 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/encdb.so 5 ruby2_keywords.rb 4 complex.so 3 rational.so 2 fiber.so 1 thread.rb 0 enumerator.so * Loaded features: * Loaded script: sidekiq 7.2.2 app [0 of 8 busy] -- Other runtime information ----------------------------------------------- /lib/x86_64-linux-gnu/libc.so.6(clone+0x43) [0x7f8949b2e353] /lib/x86_64-linux-gnu/libpthread.so.0(start_thread+0xd9) [0x7f8949c09609] /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(nt_start+0x1c7) [0x7f894a124357] thread_pthread.c:2186 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(thread_start_func_2) thread.c:667 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(thread_do_start+0x12) [0x7f894a123992] thread.c:611 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(thread_do_start_proc+0x1a2) [0x7f894a123462] thread.c:592 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_invoke_proc+0x33) [0x7f894a1785b3] vm.c:1728 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_invoke_proc+0x201) [0x7f894a178291] vm.c:1509 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_exec+0x1aa) [0x7f894a17315a] vm.c:2486 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_exec_core) insns.def:958 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_sendish) vm_insnhelper.c:5588 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_invokeblock_i) vm_insnhelper.c:5547 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_invoke_block+0x21) [0x7f894a16f11b] vm_insnhelper.c:5026 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_invoke_ifunc_block) vm_insnhelper.c:4971 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_yield_with_cfunc) vm_insnhelper.c:4784 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_pop_frame+0x0) [0x7f894a16870f] vm_insnhelper.c:4783 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_method_call_with_block_kw+0x87) [0x7f894a073367] proc.c:2472 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_call_kw+0x149) [0x7f894a17c4c9] vm_eval.c:110 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call0_body+0x48e) [0x7f894a178a8e] vm_eval.c:229 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_exec+0x1aa) [0x7f894a17315a] vm.c:2486 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_exec_core) insns.def:814 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_sendish+0xe) [0x7f894a16ea38] vm_insnhelper.c:5581 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame) vm_insnhelper.c:3518 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame_+0x78) [0x7f894a15b735] vm_insnhelper.c:3490 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_thread_s_handle_interrupt+0x1b9) [0x7f894a121089] thread.c:2246 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_yield+0x78) [0x7f894a177a08] vm.c:1634 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(invoke_block_from_c_bh+0x2ca) [0x7f894a1771fa] vm.c:1509 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_exec+0x1aa) [0x7f894a17315a] vm.c:2486 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_exec_core) insns.def:814 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_sendish+0xe) [0x7f894a16ea38] vm_insnhelper.c:5581 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame) vm_insnhelper.c:3518 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame_+0x78) [0x7f894a15b735] vm_insnhelper.c:3490 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_thread_s_handle_interrupt+0x1b9) [0x7f894a121089] thread.c:2246 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_yield+0x78) [0x7f894a177a08] vm.c:1634 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(invoke_block_from_c_bh+0x2ca) [0x7f894a1771fa] vm.c:1509 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_exec) vm.c:2492 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_exec_loop+0xa) [0x7f894a1733f7] vm.c:2513 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_exec_core) insns.def:834 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_sendish+0xe) [0x7f894a16c9d4] vm_insnhelper.c:5581 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_method+0xc4) [0x7f894a174e84] vm_insnhelper.c:4569 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_method_each_type+0x81) [0x7f894a1741a1] vm_insnhelper.c:4417 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_other) vm_insnhelper.c:3544 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame) vm_insnhelper.c:3518 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame_+0x7b) [0x7f894a15baa6] vm_insnhelper.c:3490 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_class_new_instance_pass_kw+0x52) [0x7f894a02c662] object.c:2131 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_funcallv_kw) vm_eval.c:1092 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_call+0x32) [0x7f894a17afb6] vm_eval.c:899 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_call0+0x288) [0x7f894a17a5c8] vm_eval.c:573 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call0_cc+0x111) [0x7f894a179611] vm_eval.c:110 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call0_body+0x48e) [0x7f894a178a8e] vm_eval.c:229 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_exec+0x1aa) [0x7f894a17315a] vm.c:2486 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_exec_core) insns.def:834 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_sendish+0xe) [0x7f894a16c9d4] vm_insnhelper.c:5581 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_method+0xc4) [0x7f894a174e84] vm_insnhelper.c:4569 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_method_each_type+0x81) [0x7f894a1741a1] vm_insnhelper.c:4417 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_other) vm_insnhelper.c:3544 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame) vm_insnhelper.c:3518 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(vm_call_cfunc_with_frame_+0x7b) [0x7f894a15baa6] vm_insnhelper.c:3490 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(rb_context_init_unsafe+0x58) [0x7f8922f88a01] mini_racer_extension.cc:993 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(init_v8) mini_racer_extension.cc:374 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f8922f8239f) [0x7f8922f8239f] /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f8922facfdb) [0x7f8922facfdb] /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f8923137aa0) [0x7f8923137aa0] /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f89230c7ad3) [0x7f89230c7ad3] /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f89230bafbe) [0x7f89230bafbe] /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f8923491f48) [0x7f8923491f48] app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f892349261e) [0x7f892349261e] app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f892349701d) [0x7f892349701d] app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f89234529ad) [0x7f89234529ad] app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f8923452671) [0x7f8923452671] /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so(0x7f8923339a1d) [0x7f8923339a1d] /lib/x86_64-linux-gnu/libc.so.6(malloc_usable_size+0x48) [0x7f8949aab1f8] /lib/x86_64-linux-gnu/libpthread.so.0(__restore_rt+0x0) [0x7f8949c15420] /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(sigsegv+0x4d) [0x7f894a0d8b6d] signal.c:926 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_bug_for_fatal_signal+0x104) [0x7f8949f85344] error.c:1065 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_vm_bugreport) vm_dump.c:1151 /app/vendor/ruby-3.3.0/bin/../lib/libruby.so.3.3(rb_print_backtrace+0x11) [0x7f894a189ed7] vm_dump.c:820 -- C level backtrace information ------------------------------------------- R14: 0x00007f88f79d5c00 R15: 0x0000000000002000 EFL: 0x0000000000010246 R11: 0x00007f8949aab1b0 R12: 0x0000000000000002 R13: 0x0000000000000001 R8: 0x00007f894a4ad288 R9: 0x00007f88fbc041b8 R10: 0xfffffffffffff10b RDX: 0x7270222c65757270 RDI: 0x00007f88fbec2000 RSI: 0x0000000000000000 RAX: 0x7270222c65757270 RBX: 0x00007f88fbec2000 RCX: 0x00007f88fbec1ff0 RIP: 0x00007f8949aab1f8 RBP: 0x00007f89097fce20 RSP: 0x00007f89097fcdf8 -- Machine register context ------------------------------------------------ Ruby thread count for this ractor: 19 Total ractor count: 1 -- Threading information --------------------------------------------------- /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:183:in `init_unsafe' /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:183:in `initialize' -- Ruby level backtrace information ---------------------------------------- c:0001 p:---- s:0003 e:000002 DUMMY [FINISH] c:0073 p:---- s:0456 e:000455 CFUNC :new c:0074 p:0125 s:0468 e:000467 METHOD /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:183 [FINISH] c:0075 p:---- s:0474 e:000473 CFUNC :init_unsafe -- Control frame information ----------------------------------------------- ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x86_64-linux] /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:183: [BUG] Segmentation fault at 0x0000000000000000 7f892bf1c000-7f892bf1d000 r--p 00005000 fd:00 137112 /app/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.3/lib/bootsnap/bootsnap.so 7f892bf1b000-7f892bf1c000 r--p 00005000 fd:00 137112 /app/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.3/lib/bootsnap/bootsnap.so 7f892bf18000-7f892bf1b000 r-xp 00002000 fd:00 137112 /app/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.3/lib/bootsnap/bootsnap.so 7f892bf16000-7f892bf18000 r--p 00000000 fd:00 137112 /app/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.3/lib/bootsnap/bootsnap.so 7f892bf15000-7f892bf16000 rw-p 00004000 fd:00 35073 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/sha2.so 7f892bf14000-7f892bf15000 r--p 00003000 fd:00 35073 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/sha2.so 7f892bf13000-7f892bf14000 r--p 00003000 fd:00 35073 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/sha2.so 7f892bf11000-7f892bf13000 r-xp 00001000 fd:00 35073 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/sha2.so 7f892bf10000-7f892bf11000 r--p 00000000 fd:00 35073 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/sha2.so 7f892bee0000-7f892bf00000 rw-p 00000000 00:00 0 7f892beb0000-7f892bed0000 rw-p 00000000 00:00 0 7f892be90000-7f892bea0000 rw-p 00000000 00:00 0 7f892be60000-7f892be80000 rw-p 00000000 00:00 0 7f892be30000-7f892be50000 rw-p 00000000 00:00 0 7f892be2f000-7f892be30000 rw-p 00015000 fd:00 135943 /app/vendor/bundle/ruby/3.3.0/gems/msgpack-1.7.2/lib/msgpack/msgpack.so 7f892be2e000-7f892be2f000 r--p 00014000 fd:00 135943 /app/vendor/bundle/ruby/3.3.0/gems/msgpack-1.7.2/lib/msgpack/msgpack.so 7f892be2a000-7f892be2e000 r--p 00011000 fd:00 135943 /app/vendor/bundle/ruby/3.3.0/gems/msgpack-1.7.2/lib/msgpack/msgpack.so 7f892be1c000-7f892be2a000 r-xp 00003000 fd:00 135943 /app/vendor/bundle/ruby/3.3.0/gems/msgpack-1.7.2/lib/msgpack/msgpack.so 7f892be19000-7f892be1c000 r--p 00000000 fd:00 135943 /app/vendor/bundle/ruby/3.3.0/gems/msgpack-1.7.2/lib/msgpack/msgpack.so 7f892be18000-7f892be19000 rw-p 00006000 fd:00 131487 /app/vendor/bundle/ruby/3.3.0/gems/racc-1.7.3/lib/racc/cparse.so 7f892be17000-7f892be18000 r--p 00005000 fd:00 131487 /app/vendor/bundle/ruby/3.3.0/gems/racc-1.7.3/lib/racc/cparse.so 7f892be16000-7f892be17000 r--p 00005000 fd:00 131487 /app/vendor/bundle/ruby/3.3.0/gems/racc-1.7.3/lib/racc/cparse.so 7f892be13000-7f892be16000 r-xp 00002000 fd:00 131487 /app/vendor/bundle/ruby/3.3.0/gems/racc-1.7.3/lib/racc/cparse.so 7f892be11000-7f892be13000 r--p 00000000 fd:00 131487 /app/vendor/bundle/ruby/3.3.0/gems/racc-1.7.3/lib/racc/cparse.so 7f892bd80000-7f892be00000 rw-p 00000000 00:00 0 7f892bc90000-7f892bd70000 rw-p 00000000 00:00 0 7f892bc40000-7f892bc80000 rw-p 00000000 00:00 0 7f892bc30000-7f892bc40000 rw-p 00000000 00:00 0 7f892bc10000-7f892bc20000 rw-p 00000000 00:00 0 7f892bc09000-7f892bc10000 r--s 00000000 07:14 17818 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache 7f892bc08000-7f892bc09000 rw-p 00003000 fd:00 35002 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/io/wait.so 7f892bc07000-7f892bc08000 r--p 00002000 fd:00 35002 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/io/wait.so 7f892bc06000-7f892bc07000 r--p 00002000 fd:00 35002 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/io/wait.so 7f892bc05000-7f892bc06000 r-xp 00001000 fd:00 35002 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/io/wait.so 7f892bc04000-7f892bc05000 r--p 00000000 fd:00 35002 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/io/wait.so 7f892b3ff000-7f892bc00000 rw-p 00000000 00:00 0 7f892b3fb000-7f892b3ff000 rw-p 00223000 fd:00 131682 /app/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.4-x86_64-linux/lib/nokogiri/3.3/nokogiri.so 7f892b3ef000-7f892b3fb000 r--p 00217000 fd:00 131682 /app/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.4-x86_64-linux/lib/nokogiri/3.3/nokogiri.so 7f892b3ee000-7f892b3ef000 ---p 00217000 fd:00 131682 /app/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.4-x86_64-linux/lib/nokogiri/3.3/nokogiri.so 7f892b353000-7f892b3ee000 r--p 0017c000 fd:00 131682 /app/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.4-x86_64-linux/lib/nokogiri/3.3/nokogiri.so 7f892b215000-7f892b353000 r-xp 0003e000 fd:00 131682 /app/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.4-x86_64-linux/lib/nokogiri/3.3/nokogiri.so 7f892b1d7000-7f892b215000 r--p 00000000 fd:00 131682 /app/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.4-x86_64-linux/lib/nokogiri/3.3/nokogiri.so 7f892b1d6000-7f892b1d7000 rw-p 00003000 fd:00 131229 /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer_loader.so 7f892b1d5000-7f892b1d6000 r--p 00002000 fd:00 131229 /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer_loader.so 7f892b1d4000-7f892b1d5000 r--p 00002000 fd:00 131229 /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer_loader.so 7f892b1d3000-7f892b1d4000 r-xp 00001000 fd:00 131229 /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer_loader.so 7f892b1d2000-7f892b1d3000 r--p 00000000 fd:00 131229 /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer_loader.so 7f892b1b0000-7f892b1d0000 rw-p 00000000 00:00 0 7f892b160000-7f892b1a0000 rw-p 00000000 00:00 0 7f892b14f000-7f892b150000 rw-p 00018000 07:14 17594 /usr/lib/x86_64-linux-gnu/gconv/CP932.so 7f892b14e000-7f892b14f000 r--p 00017000 07:14 17594 /usr/lib/x86_64-linux-gnu/gconv/CP932.so 7f892b139000-7f892b14e000 r--p 00003000 07:14 17594 /usr/lib/x86_64-linux-gnu/gconv/CP932.so 7f892b137000-7f892b139000 r-xp 00001000 07:14 17594 /usr/lib/x86_64-linux-gnu/gconv/CP932.so 7f892b136000-7f892b137000 r--p 00000000 07:14 17594 /usr/lib/x86_64-linux-gnu/gconv/CP932.so 7f892b135000-7f892b136000 rw-p 00003000 fd:00 35070 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/md5.so 7f892b134000-7f892b135000 r--p 00002000 fd:00 35070 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/md5.so 7f892b133000-7f892b134000 r--p 00002000 fd:00 35070 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/md5.so 7f892b132000-7f892b133000 r-xp 00001000 fd:00 35070 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/md5.so 7f892b131000-7f892b132000 r--p 00000000 fd:00 35070 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/digest/md5.so 7f892b0f0000-7f892b130000 rw-p 00000000 00:00 0 7f892b0d0000-7f892b0e0000 rw-p 00000000 00:00 0 7f892b0a0000-7f892b0c0000 rw-p 00000000 00:00 0 7f892b020000-7f892b090000 rw-p 00000000 00:00 0 7f892b010000-7f892b020000 rw-p 00000000 00:00 0 7f892b00f000-7f892b010000 rw-p 0000c000 fd:00 35081 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/objspace.so 7f892b00e000-7f892b00f000 r--p 0000b000 fd:00 35081 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/objspace.so 7f892b00c000-7f892b00e000 r--p 0000a000 fd:00 35081 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/objspace.so 7f892b005000-7f892b00c000 r-xp 00003000 fd:00 35081 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/objspace.so 7f892b002000-7f892b005000 r--p 00000000 fd:00 35081 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/objspace.so 7f892a6a0000-7f892b000000 rw-p 00000000 00:00 0 7f892a680000-7f892a690000 rw-p 00000000 00:00 0 7f892a650000-7f892a670000 rw-p 00000000 00:00 0 7f892a5b0000-7f892a640000 rw-p 00000000 00:00 0 7f892a5a8000-7f892a5b0000 rw-p 0000f000 fd:00 137671 /app/vendor/bundle/ruby/3.3.0/gems/ed25519-1.3.0/lib/ed25519_ref10.so 7f892a5a7000-7f892a5a8000 r--p 0000e000 fd:00 137671 /app/vendor/bundle/ruby/3.3.0/gems/ed25519-1.3.0/lib/ed25519_ref10.so 7f892a5a6000-7f892a5a7000 ---p 0000e000 fd:00 137671 /app/vendor/bundle/ruby/3.3.0/gems/ed25519-1.3.0/lib/ed25519_ref10.so 7f892a5a5000-7f892a5a6000 r--p 0000d000 fd:00 137671 /app/vendor/bundle/ruby/3.3.0/gems/ed25519-1.3.0/lib/ed25519_ref10.so 7f892a59a000-7f892a5a5000 r-xp 00002000 fd:00 137671 /app/vendor/bundle/ruby/3.3.0/gems/ed25519-1.3.0/lib/ed25519_ref10.so 7f892a598000-7f892a59a000 r--p 00000000 fd:00 137671 /app/vendor/bundle/ruby/3.3.0/gems/ed25519-1.3.0/lib/ed25519_ref10.so 7f892a597000-7f892a598000 rw-p 00008000 fd:00 132272 /app/vendor/bundle/ruby/3.3.0/gems/bcrypt_pbkdf-1.1.0/lib/bcrypt_pbkdf_ext.so 7f892a596000-7f892a597000 r--p 00007000 fd:00 132272 /app/vendor/bundle/ruby/3.3.0/gems/bcrypt_pbkdf-1.1.0/lib/bcrypt_pbkdf_ext.so 7f892a594000-7f892a596000 r--p 00006000 fd:00 132272 /app/vendor/bundle/ruby/3.3.0/gems/bcrypt_pbkdf-1.1.0/lib/bcrypt_pbkdf_ext.so 7f892a58f000-7f892a594000 r-xp 00001000 fd:00 132272 /app/vendor/bundle/ruby/3.3.0/gems/bcrypt_pbkdf-1.1.0/lib/bcrypt_pbkdf_ext.so f892a58e000-7f892a58f000 r--p 00000000 fd:00 132272 /app/vendor/bundle/ruby/3.3.0/gems/bcrypt_pbkdf-1.1.0/lib/bcrypt_pbkdf_ext.so f892a58d000-7f892a58e000 rw-p 00008000 fd:00 135443 /app/vendor/bundle/ruby/3.3.0/gems/io-console-0.5.9/lib/io/console.so f892a58c000-7f892a58d000 r--p 00007000 fd:00 135443 /app/vendor/bundle/ruby/3.3.0/gems/io-console-0.5.9/lib/io/console.so 7f892a58b000-7f892a58c000 ---p 00007000 fd:00 135443 /app/vendor/bundle/ruby/3.3.0/gems/io-console-0.5.9/lib/io/console.so 7f892a58a000-7f892a58b000 r--p 00006000 fd:00 135443 /app/vendor/bundle/ruby/3.3.0/gems/io-console-0.5.9/lib/io/console.so 7f892a586000-7f892a58a000 r-xp 00002000 fd:00 135443 /app/vendor/bundle/ruby/3.3.0/gems/io-console-0.5.9/lib/io/console.so 7f892a584000-7f892a586000 r--p 00000000 fd:00 135443 /app/vendor/bundle/ruby/3.3.0/gems/io-console-0.5.9/lib/io/console.so 7f892a4c0000-7f892a580000 rw-p 00000000 00:00 0 7f892a470000-7f892a4b0000 rw-p 00000000 00:00 0 7f892a450000-7f892a460000 rw-p 00000000 00:00 0 7f892a420000-7f892a440000 rw-p 00000000 00:00 0 7f892a410000-7f892a420000 rw-p 00000000 00:00 0 7f892a40f000-7f892a410000 rw-p 00005000 07:14 10559 /usr/lib/x86_64-linux-gnu/libcom_err.so.2.1 7f892a40e000-7f892a40f000 r--p 00004000 07:14 10559 /usr/lib/x86_64-linux-gnu/libcom_err.so.2.1 7f892a40d000-7f892a40e000 r--p 00004000 07:14 10559 /usr/lib/x86_64-linux-gnu/libcom_err.so.2.1 7f892a40b000-7f892a40d000 r-xp 00002000 07:14 10559 /usr/lib/x86_64-linux-gnu/libcom_err.so.2.1 7f892a409000-7f892a40b000 r--p 00000000 07:14 10559 /usr/lib/x86_64-linux-gnu/libcom_err.so.2.1 7f892a408000-7f892a409000 rw-p 00005000 07:14 10760 /usr/lib/x86_64-linux-gnu/libkeyutils.so.1.8 7f892a407000-7f892a408000 r--p 00004000 07:14 10760 /usr/lib/x86_64-linux-gnu/libkeyutils.so.1.8 7f892a406000-7f892a407000 r--p 00004000 07:14 10760 /usr/lib/x86_64-linux-gnu/libkeyutils.so.1.8 7f892a404000-7f892a406000 r-xp 00002000 07:14 10760 /usr/lib/x86_64-linux-gnu/libkeyutils.so.1.8 7f892a402000-7f892a404000 r--p 00000000 07:14 10760 /usr/lib/x86_64-linux-gnu/libkeyutils.so.1.8 7f89293f0000-7f892a400000 rw-p 00000000 00:00 0 7f8929380000-7f89293e0000 rw-p 00000000 00:00 0 7f8929360000-7f8929370000 rw-p 00000000 00:00 0 7f8929320000-7f8929350000 rw-p 00000000 00:00 0 7f89292f0000-7f8929310000 rw-p 00000000 00:00 0 7f8929290000-7f89292e0000 rw-p 00000000 00:00 0 7f8929250000-7f8929280000 rw-p 00000000 00:00 0 7f8929210000-7f8929240000 rw-p 00000000 00:00 0 7f89291f0000-7f8929200000 rw-p 00000000 00:00 0 7f8929180000-7f89291e0000 rw-p 00000000 00:00 0 7f8929150000-7f8929170000 rw-p 00000000 00:00 0 7f8929040000-7f8929140000 rw-p 00000000 00:00 0 7f892903f000-7f8929040000 ---p 00000000 00:00 0 7f892903e000-7f892903f000 rw-p 0000d000 07:14 10766 /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1 7f892903d000-7f892903e000 r--p 0000c000 07:14 10766 /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1 7f892903a000-7f892903d000 r--p 0000a000 07:14 10766 /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1 7f8929033000-7f892903a000 r-xp 00003000 07:14 10766 /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1 7f8929030000-7f8929033000 r--p 00000000 07:14 10766 /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1 7f8929020000-7f8929030000 rw-p 00000000 00:00 0 7f8929010000-7f8929020000 rw-p 00000000 00:00 0 7f892900f000-7f8929010000 rw-p 0000a000 07:14 10717 /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0 7f892900e000-7f892900f000 r--p 00009000 07:14 10717 /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0 7f892900d000-7f892900e000 ---p 00009000 07:14 10717 /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0 7f892900b000-7f892900d000 r--p 00007000 07:14 10717 /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0 7f8929007000-7f892900b000 r-xp 00003000 07:14 10717 /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0 7f8929004000-7f8929007000 r--p 00000000 07:14 10717 /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0 7f8928000000-7f8929000000 rw-p 00000000 00:00 0 7f8927fd0000-7f8927ff0000 rw-p 00000000 00:00 0 7f8927fa0000-7f8927fc0000 rw-p 00000000 00:00 0 7f8927f60000-7f8927f90000 rw-p 00000000 00:00 0 7f8927e90000-7f8927f50000 rw-p 00000000 00:00 0 7f8927e70000-7f8927e80000 rw-p 00000000 00:00 0 7f8927cd0000-7f8927e60000 rw-p 00000000 00:00 0 7f8927c30000-7f8927cc0000 rw-p 00000000 00:00 0 7f8927b8f000-7f8927c20000 rw-p 00000000 00:00 0 7f8927b8e000-7f8927b8f000 rw-p 00039000 fd:00 145359 /app/vendor/bundle/ruby/3.3.0/gems/pg-1.5.6/lib/pg_ext.so 7f8927b8d000-7f8927b8e000 r--p 00038000 fd:00 145359 /app/vendor/bundle/ruby/3.3.0/gems/pg-1.5.6/lib/pg_ext.so 7f8927b8c000-7f8927b8d000 ---p 00038000 fd:00 145359 /app/vendor/bundle/ruby/3.3.0/gems/pg-1.5.6/lib/pg_ext.so 7f8927b80000-7f8927b8c000 r--p 0002c000 fd:00 145359 /app/vendor/bundle/ruby/3.3.0/gems/pg-1.5.6/lib/pg_ext.so 7f8927b5d000-7f8927b80000 r-xp 00009000 fd:00 145359 /app/vendor/bundle/ruby/3.3.0/gems/pg-1.5.6/lib/pg_ext.so 7f8927b54000-7f8927b5d000 r--p 00000000 fd:00 145359 /app/vendor/bundle/ruby/3.3.0/gems/pg-1.5.6/lib/pg_ext.so 7f8927b53000-7f8927b54000 rw-p 00055000 07:14 10926 /usr/lib/x86_64-linux-gnu/libpq.so.5.16 7f8927b4f000-7f8927b53000 r--p 00051000 07:14 10926 /usr/lib/x86_64-linux-gnu/libpq.so.5.16 7f8927b2e000-7f8927b4f000 r--p 00031000 07:14 10926 /usr/lib/x86_64-linux-gnu/libpq.so.5.16 7f8927b08000-7f8927b2e000 r-xp 0000b000 07:14 10926 /usr/lib/x86_64-linux-gnu/libpq.so.5.16 7f8927afd000-7f8927b08000 r--p 00000000 07:14 10926 /usr/lib/x86_64-linux-gnu/libpq.so.5.16 7f8927afb000-7f8927afd000 rw-p 0004a000 07:14 10695 /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2 7f8927af9000-7f8927afb000 r--p 00048000 07:14 10695 /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2 7f8927aed000-7f8927af9000 r--p 0003d000 07:14 10695 /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2 7f8927abb000-7f8927aed000 r-xp 0000b000 07:14 10695 /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2 7f8927ab0000-7f8927abb000 r--p 00000000 07:14 10695 /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2 7f8927aae000-7f8927ab0000 rw-p 00000000 00:00 0 7f8927aad000-7f8927aae000 rw-p 00052000 07:14 10775 /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.12 7f8927aab000-7f8927aad000 r--p 00050000 07:14 10775 /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.12 7f8927aaa000-7f8927aab000 ---p 00050000 07:14 10775 /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.12 7f8927a9b000-7f8927aaa000 r--p 00041000 07:14 10775 /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.12 7f8927a67000-7f8927a9b000 r-xp 0000d000 07:14 10775 /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.12 7f8927a5a000-7f8927a67000 r--p 00000000 07:14 10775 /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.12 7f8927a58000-7f8927a5a000 rw-p 000da000 07:14 10764 /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3 7f8927a4a000-7f8927a58000 r--p 000cc000 07:14 10764 /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3 7f8927a49000-7f8927a4a000 ---p 000cc000 07:14 10764 /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3 7f8927a00000-7f8927a49000 r--p 00083000 07:14 10764 /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3 7f892799f000-7f8927a00000 r-xp 00022000 07:14 10764 /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3 7f892797d000-7f892799f000 r--p 00000000 07:14 10764 /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3 7f892797c000-7f892797d000 rw-p 00000000 00:00 0 7f892797b000-7f892797c000 rw-p 0002e000 07:14 10758 /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1 7f892797a000-7f892797b000 r--p 0002d000 07:14 10758 /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1 7f8927979000-7f892797a000 ---p 0002d000 07:14 10758 /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1 7f892796c000-7f8927979000 r--p 00020000 07:14 10758 /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1 7f8927950000-7f892796c000 r-xp 00004000 07:14 10758 /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1 7f892794c000-7f8927950000 r--p 00000000 07:14 10758 /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1 7f892794b000-7f892794c000 rw-p 0000f000 07:14 10770 /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.12 7f892794a000-7f892794b000 r--p 0000e000 07:14 10770 /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.12 7f8927949000-7f892794a000 ---p 0000e000 07:14 10770 /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.12 7f8927946000-7f8927949000 r--p 0000b000 07:14 10770 /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.12 7f892793e000-7f8927946000 r-xp 00003000 07:14 10770 /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.12 7f892793b000-7f892793e000 r--p 00000000 07:14 10770 /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.12 7f8927939000-7f892793b000 rw-p 00000000 00:00 0 7f8927938000-7f8927939000 rw-p 00018000 07:14 10941 /usr/lib/x86_64-linux-gnu/libresolv-2.31.so 7f8927937000-7f8927938000 r--p 00017000 07:14 10941 /usr/lib/x86_64-linux-gnu/libresolv-2.31.so 7f8927933000-7f8927937000 r--p 00014000 07:14 10941 /usr/lib/x86_64-linux-gnu/libresolv-2.31.so 7f8927923000-7f8927933000 r-xp 00004000 07:14 10941 /usr/lib/x86_64-linux-gnu/libresolv-2.31.so 7f892791f000-7f8927923000 r--p 00000000 07:14 10941 /usr/lib/x86_64-linux-gnu/libresolv-2.31.so 7f892791e000-7f892791f000 rw-p 0001b000 07:14 10958 /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25 7f892791d000-7f892791e000 r--p 0001a000 07:14 10958 /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25 7f8927917000-7f892791d000 r--p 00015000 07:14 10958 /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25 7f8927905000-7f8927917000 r-xp 00003000 07:14 10958 /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25 7f8927902000-7f8927905000 r--p 00000000 07:14 10958 /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25 7f8927900000-7f8927902000 rw-p 00042000 07:14 10693 /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0 7f89278fe000-7f8927900000 r--p 00040000 07:14 10693 /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0 7f89278f3000-7f89278fe000 r--p 00036000 07:14 10693 /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0 7f89278ca000-7f89278f3000 r-xp 0000d000 07:14 10693 /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0 7f89278bd000-7f89278ca000 r--p 00000000 07:14 10693 /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0 7f89278bc000-7f89278bd000 rw-p 00000000 00:00 0 7f89278ba000-7f89278bc000 rw-p 0008f000 07:14 10762 /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0 7f89278b6000-7f89278ba000 r--p 0008b000 07:14 10762 /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0 7f8927896000-7f89278b6000 r--p 0006c000 07:14 10762 /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0 7f8927845000-7f8927896000 r-xp 0001b000 07:14 10762 /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0 7f892782a000-7f8927845000 r--p 00000000 07:14 10762 /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0 7f8927829000-7f892782a000 rw-p 00017000 07:14 10946 /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0 7f8927828000-7f8927829000 r--p 00016000 07:14 10946 /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0 7f8927827000-7f8927828000 ---p 00016000 07:14 10946 /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0 7f8927823000-7f8927827000 r--p 00012000 07:14 10946 /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0 7f8927816000-7f8927823000 r-xp 00005000 07:14 10946 /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0 7f8927811000-7f8927816000 r--p 00000000 07:14 10946 /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0 7f8927810000-7f8927811000 rw-p 0000a000 07:14 10622 /usr/lib/x86_64-linux-gnu/libffi.so.7.1.0 7f892780f000-7f8927810000 r--p 00009000 07:14 10622 /usr/lib/x86_64-linux-gnu/libffi.so.7.1.0 7f892780e000-7f892780f000 ---p 00009000 07:14 10622 /usr/lib/x86_64-linux-gnu/libffi.so.7.1.0 7f892780d000-7f892780e000 r--p 00008000 07:14 10622 /usr/lib/x86_64-linux-gnu/libffi.so.7.1.0 7f8927807000-7f892780d000 r-xp 00002000 07:14 10622 /usr/lib/x86_64-linux-gnu/libffi.so.7.1.0 7f8927805000-7f8927807000 r--p 00000000 07:14 10622 /usr/lib/x86_64-linux-gnu/libffi.so.7.1.0 7f8927804000-7f8927805000 rw-p 00003000 fd:00 131958 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/rusage.so 7f8927803000-7f8927804000 r--p 00002000 fd:00 131958 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/rusage.so 7f8927802000-7f8927803000 r--p 00002000 fd:00 131958 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/rusage.so 7f8927801000-7f8927802000 r-xp 00001000 fd:00 131958 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/rusage.so 7f8927800000-7f8927801000 r--p 00000000 fd:00 131958 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/rusage.so 7f89273fe000-7f8927800000 rw-p 00000000 00:00 0 7f89273fc000-7f89273fe000 rw-p 001d0000 07:14 10676 /usr/lib/x86_64-linux-gnu/libgnutls.so.30.27.0 7f89273ed000-7f89273fc000 r--p 001c1000 07:14 10676 /usr/lib/x86_64-linux-gnu/libgnutls.so.30.27.0 7f89273ec000-7f89273ed000 ---p 001c1000 07:14 10676 /usr/lib/x86_64-linux-gnu/libgnutls.so.30.27.0 7f892737b000-7f89273ec000 r--p 00150000 07:14 10676 /usr/lib/x86_64-linux-gnu/libgnutls.so.30.27.0 7f892725a000-7f892737b000 r-xp 0002f000 07:14 10676 /usr/lib/x86_64-linux-gnu/libgnutls.so.30.27.0 7f892722b000-7f892725a000 r--p 00000000 07:14 10676 /usr/lib/x86_64-linux-gnu/libgnutls.so.30.27.0 7f8927228000-7f892722b000 rw-p 000a2000 07:14 10509 /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0 7f8927227000-7f8927228000 r--p 000a1000 07:14 10509 /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0 7f8927226000-7f8927227000 ---p 000a1000 07:14 10509 /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0 7f8927209000-7f8927226000 r--p 00084000 07:14 10509 /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0 7f892719f000-7f8927209000 r-xp 0001a000 07:14 10509 /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0 7f8927185000-7f892719f000 r--p 00000000 07:14 10509 /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0 7f8927184000-7f8927185000 rw-p 00000000 00:00 0 7f8927183000-7f8927184000 rw-p 00035000 07:14 10705 /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0 7f8927181000-7f8927183000 r--p 00033000 07:14 10705 /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0 7f8927173000-7f8927181000 r--p 00026000 07:14 10705 /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0 7f8927154000-7f8927173000 r-xp 00007000 07:14 10705 /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0 7f892714d000-7f8927154000 r--p 00000000 07:14 10705 /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0 7f8927143000-7f892714d000 rw-p 0012b000 07:14 10885 /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0 7f8927138000-7f8927143000 r--p 00120000 07:14 10885 /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0 7f89270dc000-7f8927138000 r--p 000c5000 07:14 10885 /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0 7f8927042000-7f89270dc000 r-xp 0002b000 07:14 10885 /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0 7f8927017000-7f8927042000 r--p 00000000 07:14 10885 /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0 7f8927016000-7f8927017000 rw-p 0001f000 07:14 10739 /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.6 7f8927015000-7f8927016000 r--p 0001e000 07:14 10739 /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.6 7f8927014000-7f8927015000 ---p 0001e000 07:14 10739 /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.6 7f8926ffd000-7f8927014000 r--p 00007000 07:14 10739 /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.6 7f8926ff8000-7f8926ffd000 r-xp 00002000 07:14 10739 /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.6 7f8926ff6000-7f8926ff8000 r--p 00000000 07:14 10739 /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.6 7f8926ff5000-7f8926ff6000 rw-p 00180000 07:14 11011 /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0 7f8926ff2000-7f8926ff5000 r--p 0017d000 07:14 11011 /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0 7f8926ff1000-7f8926ff2000 ---p 0017d000 07:14 11011 /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0 7f8926eba000-7f8926ff1000 r--p 00046000 07:14 11011 /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0 7f8926e84000-7f8926eba000 r-xp 00010000 07:14 11011 /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0 7f8926e74000-7f8926e84000 r--p 00000000 07:14 11011 /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0 7f8926e73000-7f8926e74000 rw-p 00014000 07:14 10986 /usr/lib/x86_64-linux-gnu/libtasn1.so.6.6.0 7f8926e72000-7f8926e73000 r--p 00013000 07:14 10986 /usr/lib/x86_64-linux-gnu/libtasn1.so.6.6.0 7f8926e71000-7f8926e72000 ---p 00013000 07:14 10986 /usr/lib/x86_64-linux-gnu/libtasn1.so.6.6.0 7f8926e6d000-7f8926e71000 r--p 0000f000 07:14 10986 /usr/lib/x86_64-linux-gnu/libtasn1.so.6.6.0 7f8926e61000-7f8926e6d000 r-xp 00003000 07:14 10986 /usr/lib/x86_64-linux-gnu/libtasn1.so.6.6.0 7f8926e5e000-7f8926e61000 r--p 00000000 07:14 10986 /usr/lib/x86_64-linux-gnu/libtasn1.so.6.6.0 7f8926e5d000-7f8926e5e000 rw-p 00038000 07:14 10832 /usr/lib/x86_64-linux-gnu/libnettle.so.7.0 7f8926e5b000-7f8926e5d000 r--p 00036000 07:14 10832 /usr/lib/x86_64-linux-gnu/libnettle.so.7.0 7f8926e4b000-7f8926e5b000 r--p 00027000 07:14 10832 /usr/lib/x86_64-linux-gnu/libnettle.so.7.0 7f8926e2d000-7f8926e4b000 r-xp 00009000 07:14 10832 /usr/lib/x86_64-linux-gnu/libnettle.so.7.0 7f8926e24000-7f8926e2d000 r--p 00000000 07:14 10832 /usr/lib/x86_64-linux-gnu/libnettle.so.7.0 7f8926e23000-7f8926e24000 rw-p 00035000 07:14 10721 /usr/lib/x86_64-linux-gnu/libhogweed.so.5.0 7f8926e22000-7f8926e23000 r--p 00034000 07:14 10721 /usr/lib/x86_64-linux-gnu/libhogweed.so.5.0 7f8926e04000-7f8926e22000 r--p 00017000 07:14 10721 /usr/lib/x86_64-linux-gnu/libhogweed.so.5.0 7f8926df4000-7f8926e04000 r-xp 00007000 07:14 10721 /usr/lib/x86_64-linux-gnu/libhogweed.so.5.0 7f8926ded000-7f8926df4000 r--p 00000000 07:14 10721 /usr/lib/x86_64-linux-gnu/libhogweed.so.5.0 7f8926dec000-7f8926ded000 rw-p 00028000 07:14 11040 /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0 7f8926deb000-7f8926dec000 r--p 00027000 07:14 11040 /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0 7f8926dc6000-7f8926deb000 r--p 00003000 07:14 11040 /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0 7f8926dc4000-7f8926dc6000 r-xp 00001000 07:14 11040 /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0 7f8926dc3000-7f8926dc4000 r--p 00000000 07:14 11040 /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0 7f8926dc2000-7f8926dc3000 rw-p 00010000 07:14 10715 /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0 7f8926dc1000-7f8926dc2000 r--p 0000f000 07:14 10715 /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0 7f8926dbd000-7f8926dc1000 r--p 0000c000 07:14 10715 /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0 7f8926db4000-7f8926dbd000 r-xp 00003000 07:14 10715 /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0 7f8926db1000-7f8926db4000 r--p 00000000 07:14 10715 /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0 7f8926db0000-7f8926db1000 rw-p 00000000 00:00 0 7f8926daf000-7f8926db0000 rw-p 0004b000 07:14 10723 /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0 7f8926dac000-7f8926daf000 r--p 00048000 07:14 10723 /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0 7f8926d9c000-7f8926dac000 r--p 00039000 07:14 10723 /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0 7f8926d73000-7f8926d9c000 r-xp 00010000 07:14 10723 /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0 7f8926d63000-7f8926d73000 r--p 00000000 07:14 10723 /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0 7f8926d60000-7f8926d63000 rw-p 00125000 07:14 10972 /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6 7f8926d5d000-7f8926d60000 r--p 00122000 07:14 10972 /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6 7f8926d5c000-7f8926d5d000 ---p 00122000 07:14 10972 /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6 7f8926d28000-7f8926d5c000 r--p 000ee000 07:14 10972 /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6 7f8926c48000-7f8926d28000 r-xp 0000e000 07:14 10972 /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6 7f8926c3a000-7f8926c48000 r--p 00000000 07:14 10972 /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6 7f8926c39000-7f8926c3a000 rw-p 00003000 fd:00 131961 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/allocations.so 7f8926c38000-7f8926c39000 r--p 00002000 fd:00 131961 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/allocations.so 7f8926c37000-7f8926c38000 r--p 00002000 fd:00 131961 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/allocations.so 7f8926c36000-7f8926c37000 r-xp 00001000 fd:00 131961 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/allocations.so 7f8926c35000-7f8926c36000 r--p 00000000 fd:00 131961 /app/vendor/bundle/ruby/3.3.0/gems/scout_apm-5.3.8/lib/allocations.so 7f8926c34000-7f8926c35000 rw-p 00003000 fd:00 35008 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/iso_8859_1.so 7f8926c33000-7f8926c34000 r--p 00002000 fd:00 35008 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/iso_8859_1.so 7f8926c32000-7f8926c33000 r--p 00002000 fd:00 35008 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/iso_8859_1.so 7f8926c31000-7f8926c32000 r-xp 00001000 fd:00 35008 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/iso_8859_1.so 7f8926c30000-7f8926c31000 r--p 00000000 fd:00 35008 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/iso_8859_1.so 7f8926c10000-7f8926c30000 rw-p 00000000 00:00 0 7f8926c0f000-7f8926c10000 rw-p 00043000 fd:00 135128 /app/vendor/bundle/ruby/3.3.0/gems/google-protobuf-4.26.1-x86_64-linux/lib/google/3.3/protobuf_c.so 7f8926c0e000-7f8926c0f000 r--p 00042000 fd:00 135128 /app/vendor/bundle/ruby/3.3.0/gems/google-protobuf-4.26.1-x86_64-linux/lib/google/3.3/protobuf_c.so 7f8926c0d000-7f8926c0e000 ---p 00042000 fd:00 135128 /app/vendor/bundle/ruby/3.3.0/gems/google-protobuf-4.26.1-x86_64-linux/lib/google/3.3/protobuf_c.so 7f8926c00000-7f8926c0d000 r--p 00035000 fd:00 135128 /app/vendor/bundle/ruby/3.3.0/gems/google-protobuf-4.26.1-x86_64-linux/lib/google/3.3/protobuf_c.so 7f8926bcf000-7f8926c00000 r-xp 00004000 fd:00 135128 /app/vendor/bundle/ruby/3.3.0/gems/google-protobuf-4.26.1-x86_64-linux/lib/google/3.3/protobuf_c.so 7f8926bcb000-7f8926bcf000 r--p 00000000 fd:00 135128 /app/vendor/bundle/ruby/3.3.0/gems/google-protobuf-4.26.1-x86_64-linux/lib/google/3.3/protobuf_c.so 7f8926bca000-7f8926bcb000 rw-p 00007000 fd:00 33121 /app/.apt/usr/lib/x86_64-linux-gnu/libcolamd.so.2.9.6 7f8926bc9000-7f8926bca000 r--p 00006000 fd:00 33121 /app/.apt/usr/lib/x86_64-linux-gnu/libcolamd.so.2.9.6 7f8926bc8000-7f8926bc9000 r--p 00006000 fd:00 33121 /app/.apt/usr/lib/x86_64-linux-gnu/libcolamd.so.2.9.6 7f8926bc3000-7f8926bc8000 r-xp 00001000 fd:00 33121 /app/.apt/usr/lib/x86_64-linux-gnu/libcolamd.so.2.9.6 7f8926bc2000-7f8926bc3000 r--p 00000000 fd:00 33121 /app/.apt/usr/lib/x86_64-linux-gnu/libcolamd.so.2.9.6 7f8926bb0000-7f8926bc0000 rw-p 00000000 00:00 0 7f8926b90000-7f8926ba0000 rw-p 00000000 00:00 0 7f8926b8f000-7f8926b90000 rw-p 00298000 fd:00 141593 /app/vendor/bundle/ruby/3.3.0/gems/pg_query-5.1.0/lib/pg_query/pg_query.so 7f8926b5c000-7f8926b8f000 r--p 00265000 fd:00 141593 /app/vendor/bundle/ruby/3.3.0/gems/pg_query-5.1.0/lib/pg_query/pg_query.so 7f8926b5b000-7f8926b5c000 ---p 00265000 fd:00 141593 /app/vendor/bundle/ruby/3.3.0/gems/pg_query-5.1.0/lib/pg_query/pg_query.so 7f8926a5b000-7f8926b5b000 r--p 00165000 fd:00 141593 /app/vendor/bundle/ruby/3.3.0/gems/pg_query-5.1.0/lib/pg_query/pg_query.so 7f892692c000-7f8926a5b000 r-xp 00036000 fd:00 141593 /app/vendor/bundle/ruby/3.3.0/gems/pg_query-5.1.0/lib/pg_query/pg_query.so 7f89268f6000-7f892692c000 r--p 00000000 fd:00 141593 /app/vendor/bundle/ruby/3.3.0/gems/pg_query-5.1.0/lib/pg_query/pg_query.so 7f89268f5000-7f89268f6000 rw-p 00003000 fd:00 33120 /app/.apt/usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so.5.7.1 7f89268f4000-7f89268f5000 r--p 00002000 fd:00 33120 /app/.apt/usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so.5.7.1 7f89268f3000-7f89268f4000 r--p 00002000 fd:00 33120 /app/.apt/usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so.5.7.1 7f89268f2000-7f89268f3000 r-xp 00001000 fd:00 33120 /app/.apt/usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so.5.7.1 7f89268f1000-7f89268f2000 r--p 00000000 fd:00 33120 /app/.apt/usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so.5.7.1 7f89268d0000-7f89268f0000 rw-p 00000000 00:00 0 7f89268cf000-7f89268d0000 rw-p 0000b000 fd:00 137521 /app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/puma_http11.so 7f89268ce000-7f89268cf000 r--p 0000a000 fd:00 137521 /app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/puma_http11.so 7f89268cc000-7f89268ce000 r--p 00009000 fd:00 137521 /app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/puma_http11.so 7f89268c7000-7f89268cc000 r-xp 00004000 fd:00 137521 /app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/puma_http11.so 7f89268c3000-7f89268c7000 r--p 00000000 fd:00 137521 /app/vendor/bundle/ruby/3.3.0/gems/puma-6.4.2/lib/puma/puma_http11.so 7f89268c2000-7f89268c3000 rw-p 00040000 07:14 10682 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f89268c1000-7f89268c2000 r--p 0003f000 07:14 10682 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f89268b5000-7f89268c1000 r--p 00034000 07:14 10682 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f892688a000-7f89268b5000 r-xp 00009000 07:14 10682 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f8926881000-7f892688a000 r--p 00000000 07:14 10682 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f8926860000-7f8926880000 rw-p 00000000 00:00 0 7f8926830000-7f8926850000 rw-p 00000000 00:00 0 7f8926810000-7f8926820000 rw-p 00000000 00:00 0 7f892680f000-7f8926810000 rw-p 00006000 07:14 10847 /usr/lib/x86_64-linux-gnu/libnss_dns-2.31.so 7f892680e000-7f892680f000 r--p 00005000 07:14 10847 /usr/lib/x86_64-linux-gnu/libnss_dns-2.31.so 7f892680d000-7f892680e000 r--p 00005000 07:14 10847 /usr/lib/x86_64-linux-gnu/libnss_dns-2.31.so 7f8926809000-7f892680d000 r-xp 00001000 07:14 10847 /usr/lib/x86_64-linux-gnu/libnss_dns-2.31.so 7f8926808000-7f8926809000 r--p 00000000 07:14 10847 /usr/lib/x86_64-linux-gnu/libnss_dns-2.31.so 7f89263e2000-7f8926800000 rw-p 00000000 00:00 0 7f89263e1000-7f89263e2000 r--p 00000000 00:00 0 7f89263de000-7f89263e1000 rw-p 00000000 00:00 0 7f89263c9000-7f89263de000 rw-p 0356e000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f89263c8000-7f89263c9000 r--p 0356d000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f89263c6000-7f89263c8000 rw-p 0356b000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f8926356000-7f89263c6000 r--p 034fb000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f8926355000-7f8926356000 ---p 034fb000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f89241d5000-7f8926355000 r--p 0137b000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f8922f76000-7f89241d5000 r-xp 0011c000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f8922e5a000-7f8922f76000 r--p 00000000 fd:00 36823 /app/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.12.0/mini_racer_extension.so 7f8922e57000-7f8922e5a000 rw-p 00000000 00:00 0 7f8922e54000-7f8922e57000 rw-p 001db000 07:14 10980 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 7f8922e49000-7f8922e54000 r--p 001d0000 07:14 10980 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 7f8922e48000-7f8922e49000 ---p 001d0000 07:14 10980 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 7f8922dff000-7f8922e48000 r--p 00187000 07:14 10980 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 7f8922d0e000-7f8922dff000 r-xp 00096000 07:14 10980 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 7f8922c78000-7f8922d0e000 r--p 00000000 07:14 10980 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 7f8922c20000-7f8922c60000 rw-p 00000000 00:00 0 7f8922c10000-7f8922c20000 rw-p 00000000 00:00 0 7f8922c0f000-7f8922c10000 rw-p 0000a000 fd:00 136235 /app/vendor/bundle/ruby/3.3.0/gems/tiny_tds-2.1.7/lib/tiny_tds/tiny_tds.so 7f8922c0e000-7f8922c0f000 r--p 00009000 fd:00 136235 /app/vendor/bundle/ruby/3.3.0/gems/tiny_tds-2.1.7/lib/tiny_tds/tiny_tds.so 7f8922c0c000-7f8922c0e000 r--p 00008000 fd:00 136235 /app/vendor/bundle/ruby/3.3.0/gems/tiny_tds-2.1.7/lib/tiny_tds/tiny_tds.so 7f8922c07000-7f8922c0c000 r-xp 00003000 fd:00 136235 /app/vendor/bundle/ruby/3.3.0/gems/tiny_tds-2.1.7/lib/tiny_tds/tiny_tds.so 7f8922c04000-7f8922c07000 r--p 00000000 fd:00 136235 /app/vendor/bundle/ruby/3.3.0/gems/tiny_tds-2.1.7/lib/tiny_tds/tiny_tds.so 7f8922800000-7f8922c00000 rw-p 00000000 00:00 0 7f89227fe000-7f8922800000 rw-p 00132000 fd:00 132341 /app/vendor/bundle/ruby/3.3.0/gems/outliertree-0.3.1/lib/outliertree/ext.so 7f89227fa000-7f89227fe000 r--p 0012e000 fd:00 132341 /app/vendor/bundle/ruby/3.3.0/gems/outliertree-0.3.1/lib/outliertree/ext.so 7f89227d1000-7f89227fa000 r--p 00106000 fd:00 132341 /app/vendor/bundle/ruby/3.3.0/gems/outliertree-0.3.1/lib/outliertree/ext.so 7f892270a000-7f89227d1000 r-xp 0003f000 fd:00 132341 /app/vendor/bundle/ruby/3.3.0/gems/outliertree-0.3.1/lib/outliertree/ext.so 7f89226cb000-7f892270a000 r--p 00000000 fd:00 132341 /app/vendor/bundle/ruby/3.3.0/gems/outliertree-0.3.1/lib/outliertree/ext.so 7f89226ca000-7f89226cb000 rw-p 00009000 fd:00 33123 /app/.apt/usr/lib/x86_64-linux-gnu/libamd.so.2.4.6 7f89226c9000-7f89226ca000 r--p 00008000 fd:00 33123 /app/.apt/usr/lib/x86_64-linux-gnu/libamd.so.2.4.6 7f89226c8000-7f89226c9000 ---p 00008000 fd:00 33123 /app/.apt/usr/lib/x86_64-linux-gnu/libamd.so.2.4.6 7f89226c7000-7f89226c8000 r--p 00007000 fd:00 33123 /app/.apt/usr/lib/x86_64-linux-gnu/libamd.so.2.4.6 7f89226c1000-7f89226c7000 r-xp 00001000 fd:00 33123 /app/.apt/usr/lib/x86_64-linux-gnu/libamd.so.2.4.6 7f89226c0000-7f89226c1000 r--p 00000000 fd:00 33123 /app/.apt/usr/lib/x86_64-linux-gnu/libamd.so.2.4.6 7f89225d0000-7f89226c0000 rw-p 00000000 00:00 0 7f89225cf000-7f89225d0000 rw-p 0000f000 fd:00 35082 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/fiddle.so 7f89225ce000-7f89225cf000 r--p 0000e000 fd:00 35082 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/fiddle.so 7f89225cb000-7f89225ce000 r--p 0000c000 fd:00 35082 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/fiddle.so 7f89225c3000-7f89225cb000 r-xp 00004000 fd:00 35082 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/fiddle.so 7f89225bf000-7f89225c3000 r--p 00000000 fd:00 35082 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/fiddle.so 7f89225be000-7f89225bf000 rw-p 00009000 07:14 10783 /usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1 7f89225bd000-7f89225be000 r--p 00008000 07:14 10783 /usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1 7f89225bb000-7f89225bd000 r--p 00007000 07:14 10783 /usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1 7f89225b6000-7f89225bb000 r-xp 00002000 07:14 10783 /usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1 7f89225b4000-7f89225b6000 r--p 00000000 07:14 10783 /usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1 7f89225a0000-7f89225b0000 rw-p 00000000 00:00 0 7f892259f000-7f89225a0000 rw-p 00028000 fd:00 36210 /app/vendor/bundle/ruby/3.3.0/gems/ffi-1.16.3/lib/ffi_c.so 7f892259e000-7f892259f000 r--p 00027000 fd:00 36210 /app/vendor/bundle/ruby/3.3.0/gems/ffi-1.16.3/lib/ffi_c.so 7f892259d000-7f892259e000 ---p 00027000 fd:00 36210 /app/vendor/bundle/ruby/3.3.0/gems/ffi-1.16.3/lib/ffi_c.so 7f8922595000-7f892259d000 r--p 0001f000 fd:00 36210 /app/vendor/bundle/ruby/3.3.0/gems/ffi-1.16.3/lib/ffi_c.so 7f892257c000-7f8922595000 r-xp 00006000 fd:00 36210 /app/vendor/bundle/ruby/3.3.0/gems/ffi-1.16.3/lib/ffi_c.so 7f8922576000-7f892257c000 r--p 00000000 fd:00 36210 /app/vendor/bundle/ruby/3.3.0/gems/ffi-1.16.3/lib/ffi_c.so 7f8922550000-7f8922570000 rw-p 00000000 00:00 0 7f892254f000-7f8922550000 rw-p 00011000 fd:00 145057 /app/vendor/bundle/ruby/3.3.0/gems/llhttp-ffi-0.5.0/ext/x86_64-linux/libllhttp-ext.so 7f892254e000-7f892254f000 r--p 00010000 fd:00 145057 /app/vendor/bundle/ruby/3.3.0/gems/llhttp-ffi-0.5.0/ext/x86_64-linux/libllhttp-ext.so 7f8922549000-7f892254e000 r--p 0000c000 fd:00 145057 /app/vendor/bundle/ruby/3.3.0/gems/llhttp-ffi-0.5.0/ext/x86_64-linux/libllhttp-ext.so 7f8922541000-7f8922549000 r-xp 00004000 fd:00 145057 /app/vendor/bundle/ruby/3.3.0/gems/llhttp-ffi-0.5.0/ext/x86_64-linux/libllhttp-ext.so 7f892253d000-7f8922541000 r--p 00000000 fd:00 145057 /app/vendor/bundle/ruby/3.3.0/gems/llhttp-ffi-0.5.0/ext/x86_64-linux/libllhttp-ext.so 7f89224f0000-7f8922530000 rw-p 00000000 00:00 0 7f89224d0000-7f89224e0000 rw-p 00000000 00:00 0 7f89224b0000-7f89224c0000 rw-p 00000000 00:00 0 7f8922480000-7f89224a0000 rw-p 00000000 00:00 0 7f8922420000-7f8922470000 rw-p 00000000 00:00 0 7f8922410000-7f8922420000 rw-p 00000000 00:00 0 7f89217b0000-7f8922400000 rw-p 00000000 00:00 0 7f89216f0000-7f89217a0000 rw-p 00000000 00:00 0 7f89216db000-7f89216e0000 rw-p 00000000 00:00 0 7f89216d9000-7f89216db000 rw-p 00065000 fd:00 133148 /app/vendor/bundle/ruby/3.3.0/gems/oj-3.16.3/lib/oj/oj.so 7f89216d8000-7f89216d9000 r--p 00064000 fd:00 133148 /app/vendor/bundle/ruby/3.3.0/gems/oj-3.16.3/lib/oj/oj.so 7f89216d7000-7f89216d8000 ---p 00064000 fd:00 133148 /app/vendor/bundle/ruby/3.3.0/gems/oj-3.16.3/lib/oj/oj.so 7f89216c5000-7f89216d7000 r--p 00052000 fd:00 133148 /app/vendor/bundle/ruby/3.3.0/gems/oj-3.16.3/lib/oj/oj.so 7f892167d000-7f89216c5000 r-xp 0000a000 fd:00 133148 /app/vendor/bundle/ruby/3.3.0/gems/oj-3.16.3/lib/oj/oj.so 7f8921673000-7f892167d000 r--p 00000000 fd:00 133148 /app/vendor/bundle/ruby/3.3.0/gems/oj-3.16.3/lib/oj/oj.so 7f8921600000-7f8921670000 rw-p 00000000 00:00 0 f89214c0000-7f89215f0000 rw-p 00000000 00:00 0 f89214a0000-7f89214b0000 rw-p 00000000 00:00 0 f8921470000-7f8921490000 rw-p 00000000 00:00 0 f8921450000-7f8921460000 rw-p 00000000 00:00 0 f8921430000-7f8921440000 rw-p 00000000 00:00 0 f8921410000-7f8921420000 rw-p 00000000 00:00 0 f8920400000-7f8921400000 rw-p 00000000 00:00 0 f8920300000-7f89203f0000 rw-p 00000000 00:00 0 f8920180000-7f89202f0000 rw-p 00000000 00:00 0 f8920010000-7f8920170000 rw-p 00000000 00:00 0 7f891fbb0000-7f8920000000 rw-p 00000000 00:00 0 7f891fbaf000-7f891fbb0000 rw-p 00018000 fd:00 143319 /app/vendor/bundle/ruby/3.3.0/gems/redcarpet-3.6.0/lib/redcarpet.so 7f891fbae000-7f891fbaf000 r--p 00017000 fd:00 143319 /app/vendor/bundle/ruby/3.3.0/gems/redcarpet-3.6.0/lib/redcarpet.so 7f891fbad000-7f891fbae000 ---p 00017000 fd:00 143319 /app/vendor/bundle/ruby/3.3.0/gems/redcarpet-3.6.0/lib/redcarpet.so 7f891fba9000-7f891fbad000 r--p 00013000 fd:00 143319 /app/vendor/bundle/ruby/3.3.0/gems/redcarpet-3.6.0/lib/redcarpet.so 7f891fb99000-7f891fba9000 r-xp 00003000 fd:00 143319 /app/vendor/bundle/ruby/3.3.0/gems/redcarpet-3.6.0/lib/redcarpet.so 7f891fb96000-7f891fb99000 r--p 00000000 fd:00 143319 /app/vendor/bundle/ruby/3.3.0/gems/redcarpet-3.6.0/lib/redcarpet.so 7f891fb00000-7f891fb90000 rw-p 00000000 00:00 0 7f891fad0000-7f891faf0000 rw-p 00000000 00:00 0 7f891facf000-7f891fad0000 rw-p 00047000 fd:00 35080 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/ripper.so 7f891facd000-7f891facf000 r--p 00045000 fd:00 35080 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/ripper.so 7f891fab3000-7f891facd000 r--p 0002c000 fd:00 35080 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/ripper.so 7f891fa8e000-7f891fab3000 r-xp 00007000 fd:00 35080 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/ripper.so 7f891fa87000-7f891fa8e000 r--p 00000000 fd:00 35080 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/ripper.so 7f891fa00000-7f891fa80000 rw-p 00000000 00:00 0 7f891f880000-7f891f9f0000 rw-p 00000000 00:00 0 7f891f810000-7f891f870000 rw-p 00000000 00:00 0 7f891ebb0000-7f891f800000 rw-p 00000000 00:00 0 7f891eb90000-7f891eba0000 rw-p 00000000 00:00 0 7f891eb8f000-7f891eb90000 rw-p 004e6000 fd:00 131824 /app/vendor/bundle/ruby/3.3.0/gems/tiktoken_ruby-0.0.8-x86_64-linux/lib/tiktoken_ruby/3.3/tiktoken_ruby.so 7f891eb69000-7f891eb8f000 r--p 004c0000 fd:00 131824 /app/vendor/bundle/ruby/3.3.0/gems/tiktoken_ruby-0.0.8-x86_64-linux/lib/tiktoken_ruby/3.3/tiktoken_ruby.so 7f891eb68000-7f891eb69000 ---p 004c0000 fd:00 131824 /app/vendor/bundle/ruby/3.3.0/gems/tiktoken_ruby-0.0.8-x86_64-linux/lib/tiktoken_ruby/3.3/tiktoken_ruby.so 7f891e7c7000-7f891eb68000 r--p 0011f000 fd:00 131824 /app/vendor/bundle/ruby/3.3.0/gems/tiktoken_ruby-0.0.8-x86_64-linux/lib/tiktoken_ruby/3.3/tiktoken_ruby.so 7f891e6d8000-7f891e7c7000 r-xp 00030000 fd:00 131824 /app/vendor/bundle/ruby/3.3.0/gems/tiktoken_ruby-0.0.8-x86_64-linux/lib/tiktoken_ruby/3.3/tiktoken_ruby.so 7f891e6a8000-7f891e6d8000 r--p 00000000 fd:00 131824 /app/vendor/bundle/ruby/3.3.0/gems/tiktoken_ruby-0.0.8-x86_64-linux/lib/tiktoken_ruby/3.3/tiktoken_ruby.so 7f891e670000-7f891e6a0000 rw-p 00000000 00:00 0 7f891e630000-7f891e660000 rw-p 00000000 00:00 0 7f891e5b0000-7f891e620000 rw-p 00000000 00:00 0 7f891e4a0000-7f891e5a0000 rw-p 00000000 00:00 0 7f891e49f000-7f891e4a0000 ---p 00000000 00:00 0 7f891e49e000-7f891e49f000 rw-p 0001c000 fd:00 35029 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/trans/single_byte.so 7f891e499000-7f891e49e000 r--p 00017000 fd:00 35029 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/trans/single_byte.so 7f891e485000-7f891e499000 r--p 00004000 fd:00 35029 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/trans/single_byte.so 7f891e484000-7f891e485000 r-xp 00003000 fd:00 35029 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/trans/single_byte.so 7f891e481000-7f891e484000 r--p 00000000 fd:00 35029 /app/vendor/ruby-3.3.0/lib/ruby/3.3.0/x86_64-linux/enc/trans/single_byte.so 7f891e47b000-7f891e481000 rw-p 00000000 00:00 0 7f891e47a000-7f891e47b000 rw-p 0000c000 07:14 10850 /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so 7f891e479000-7f891e47a000 r--p 0000b000 07:14 10850 /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so 7f891e477000-7f891e479000 r--p 0000a000 07:14 10850 /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so 7f891e470000-7f891e477000 r-xp 00003000 07:14 10850 /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so 7f891e46d000-7f891e470000 r--p 00000000 07:14 10850 /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so ```
tisba commented 6 months ago

@fjl82

I am using sprockets, but I had not checked whether it's involved or not. I first got these errors when rendering a js response to an ajax request, and also saw them when shutting down the server (running puma).

Are you using puma in clustered mode? forking is known to cause some troubles with mini_racer/v8, see https://github.com/rubyjs/mini_racer#fork-safety.

fjl82 commented 6 months ago

I am indeed using puma in clustered mode, but it was working fine on 0.8.0, and starting puma in single mode gives me the same segfault in the same place. I have the suggested fork safety line in an initializer, and removing this makes no difference in any scenario.

D-system commented 6 months ago

I'm still not able to reproduce it in a local Docker even when I use the Docker image of the CI.

I continue to investigate on the CI directly. SSH and vi for the win!

Anyway, I track down the issue. On a brand new Rails 6.1 app:

autoprefixer-rails has only execjs as dependency. In my very case, autoprefixer-rails might have some code that seg fault in the CI only.

I don't know what else I could search.

SamSaffron commented 6 months ago

@D-system I wish I had more to add here, but so much depends on a standalone repro. In theory most people use mini_racer in a very simple way, if you can get a crash then you can monkey patch eval to save what it is evaling into a file and then we can use that to cause the crash.

Once we have one we will very likely be able to sort this out quickly

There is a chance here as well that libraries were using mini racer in a fork unsafe way and somehow got away with it in earlier versions due to luck.

viralpraxis commented 6 months ago

The same happened to me after upgrading to the latest libv8-node (21.7.2.0) and mini_racer (0.12.0) during running specs

ruby/3.3.0/lib/ruby/gems/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:228: [BUG] Segmentation fault at 0x0000734c73d8700

ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x86_64-linux]

D-system commented 6 months ago

After some lengthy monkey patching session, I'm 99% sure it's due to this file: https://github.com/ai/autoprefixer-rails/blob/master/vendor/autoprefixer.js I removed the source map at the last line, it does not change anything.

The file is 6.29MB which isn't the simplest to debug.

SamSaffron commented 6 months ago

Oh wow, does an eval of this file cause the crash?

On Wed, 1 May 2024 at 6:28 PM, Thomas @.***> wrote:

After some lengthy monkey patching session, I'm 99% sure it's due to this file: https://github.com/ai/autoprefixer-rails/blob/master/vendor/autoprefixer.js I removed the source map at the last line, it does not change anything.

The file is 6.29MB which isn't the simplest to debug.

— Reply to this email directly, view it on GitHub https://github.com/rubyjs/mini_racer/issues/300#issuecomment-2088148748, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAABIXPXZDI2KX724Z3GTFTZACRTFAVCNFSM6AAAAABGUEE3QSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOBYGE2DQNZUHA . You are receiving this because you were mentioned.Message ID: @.***>

D-system commented 6 months ago

I copy/paste that giant file into a browser console and got an error:

 Uncaught ReferenceError: SharedArrayBuffer is not defined
    at <anonymous>:9900:39
    at createCommonjsModule (<anonymous>:258:11)
    at <anonymous>:9553:15
    at <anonymous>:77306:3
image

Which is used at line 9900 (other references are inside a strings)

image
D-system commented 6 months ago

From Chrome 92 (and Firefox too), SharedArrayBuffer is disabled by default for security reason due to the meltdown and specter attack (https://meltdownattack.com/)

https://web.dev/articles/cross-origin-isolation-guide

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer

lloeki commented 6 months ago

Thanks for diving this deep into it @D-system, IIUC this still not reproduced locally, only in CircleCI?

lloeki commented 6 months ago

I copy/paste that giant file into a browser console

I think what Sam meant is mimicking https://github.com/ai/autoprefixer-rails/blob/cf0af2807108e43f4858574b5d22dfaec0630d80/lib/autoprefixer-rails/processor.rb#L133C9-L133C23

i.e does the following cause a crash?

js = File.read('path/to/autoprefixer.js')

# direct mini_racer
context = MiniRacer::Context.new
context.eval(js)

# via execjs, goes through:
# - https://github.com/rails/execjs/blob/ea4731de8b7b68de8404029c2f3d52eacefabec7/lib/execjs/runtime.rb#L68
# - https://github.com/rails/execjs/blob/ea4731de8b7b68de8404029c2f3d52eacefabec7/lib/execjs/mini_racer_runtime.rb#L11
ExecJS.compile(js)

If that's not enough, maybe it can be reproduced by mimicking https://github.com/ai/autoprefixer-rails/blob/cf0af2807108e43f4858574b5d22dfaec0630d80/lib/autoprefixer-rails/processor.rb#L35 with a specific input file?

css = File.read('path/to/style.css')
process_opts = { from: ..., to: ..., map: ... }
plugin_opts = { ... }

# direct mini_racer
context.eval("autoprefixer.process.apply(this, #{JSON.generate([css, process_opts, plugin_opts])}")

# via execs, goes through:
# - https://github.com/rails/execjs/blob/ea4731de8b7b68de8404029c2f3d52eacefabec7/lib/execjs/mini_racer_runtime.rb#L35
ExecJS.call('autoprefixer.process', css, process_opts, plugin_opts)

Notes:

george-gca commented 6 months ago

I don't know if it's the same bug, but recently I added a new plugin to the Gemfile of a template repository, which caused the Docker image to be rebuilt with the latest versions of the libraries. The build failed in GitHub actions, with the message:

compiling mini_racer_extension.cc
linking shared-object mini_racer_extension.so
/usr/bin/ld: cannot find
/var/lib/gems/3.2.0/gems/libv8-node-21.7.2.0-x86_64-linux/vendor/v8/x86_64-linux-gnu/libv8/obj/libv8_monolith.a:
No such file or directory
collect2: error: ld returned 1 exit status
make: *** [Makefile:265: mini_racer_extension.so] Error 1
lloeki commented 6 months ago

@george-gca entirely unrelated. see https://github.com/rubyjs/libv8-node/pull/36#issuecomment-2045274661

bekkou68 commented 6 months ago

Thank you for dealing. FYI, the following combination worked for me. It caused no segmentation fault.

D-system commented 6 months ago

I don't have time to investigate further at the moment. I'll be AFK from tomorrow until after the RubyKaigi (2024-05-15 to 17).

D-system commented 5 months ago

I'm back.


After adding autoprefixer-rails to the Gemfile, I tried js = File.read('/home/circleci/.rubygems/gems/autoprefixer-rails-10.4.16.0/vendor/autoprefixer.js'); MiniRacer::Context.new.eval(js), the command doesn't error out.

(the ./bin/rails assets:clobber assets:precompile does not work)


Then I copied the autoprefixer.js into the app/javascript/packs/application.js, I removed the gem autoprefixer-rails and run ./bin/rails assets:clobber assets:precompile and it just works fine.


The error certainly happens after the file is loaded and when the CSS is being process. Another time, I'll look at how https://github.com/ai/autoprefixer-rails works to debug.

tisba commented 5 months ago

Interesting, @D-system. Would be great to have a working reproduction. Maybe all that's left is some CSS, if I'm reading your findings correctly. Thank you for your efforts!

D-system commented 5 months ago

I'm using a brand new app. The CSS is non existent. Just the application.css below that only have require_tree and require_self which doesn't do much, there's no extra file. It is frustrating.

/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *
 *= require_tree .
 *= require_self
 */

I also would love to have the bug reproduced on my local. I'm still SSH-ing to CircleCI.

Here's the command that I use to reproduce the bug on CircleCI:

gem install rails -v 6.1.7.7
rails new --skip-webpack-install app
cd app

echo "gem 'mini_racer', '~> 0.12.0'" >> Gemfile
echo 'gem "autoprefixer-rails", "10.4.16.0"' >> Gemfile

bundle install
./bin/rails assets:clobber assets:precompile
SamSaffron commented 5 months ago

This does reproduce it in docker:

docker run -it --rm ruby:3.0
gem install rails -v 6.1.7.7
rails new --skip-javascript app
cd app

echo "gem 'mini_racer', '~> 0.12.0'" >> Gemfile
echo 'gem "autoprefixer-rails", "10.4.16.0"' >> Gemfile

bundle install
./bin/rails assets:clobber assets:precompile

I looked at the files and there is nothing special about them, the backtrace for the segfault is on cleanup.

specifically miniracer calling deallocate from the finalize_list in ruby and free_context_raw leading to a segfault.

@lloeki is this enough for you to debug, or do you need more help here? One possibility here is that somehow autoprefixer is forking processes, I looked at the code and it does not look like it.

The crash looks like is is from

if (isolate_info) { isolate_info->release(); }

SamSaffron commented 5 months ago

@cataphract any ideas about :arrow_double_up: ? We tried to fix a premature cleanup previously.

tisba commented 5 months ago

jFYI: The example does not crash under aarch64-linux or x86_64-linux (under Rosetta emulation) on Apple Silicon, M1 Pro.

jusleg commented 5 months ago

In our app we encountered segfaults with mini_racer and turf.js when doing the bump from 0.9.0 to 0.12.0. It didn't occur in our CI but it did in our prod instance.

CI is running on buildjet ubuntu 22.04 with ruby 3.2.2 and prod is running on heroku on ubuntu 20.04 with ruby 3.2.2 and YJIT and jemalloc enabled

lloeki commented 5 months ago

and jemalloc enabled

This is most probably jemalloc-related, which is known to trigger core dumps unrelated to this very one.

lloeki commented 5 months ago

is this enough for you to debug

@SamSaffron if I manage to reliably reproduce it, possibly so.

lloeki commented 5 months ago

Sadly, no repro (neither on M1 hardware nor on Intel hardware) :/

emilong commented 5 months ago

If this is any help, @SamSaffron's repro did work for me and I traced the segfault a bit further down to this line:

https://github.com/rubyjs/mini_racer/blob/5b2a25cdb4c84c7500ed47639ef8c664f5bac26d/ext/mini_racer_extension/mini_racer_extension.cc#L1434

I forced libv8-node down to 20.12.1.0 and the issue went away, so perhaps it's possible that it's either a bug in 21.7.2.0 or a breaking change requiring an update?

Edit: for those who don't know (like me before yesterday!) that isolate in the line I think is a v8::Isolate, i.e. part of V8 proper and not mini_racer.

huda-kh commented 5 months ago

If this is any help, @SamSaffron's repro did work for me and I traced the segfault a bit further down to this line:

https://github.com/rubyjs/mini_racer/blob/5b2a25cdb4c84c7500ed47639ef8c664f5bac26d/ext/mini_racer_extension/mini_racer_extension.cc#L1434

I forced libv8-node down to 20.12.1.0 and the issue went away, so perhaps it's possible that it's either a bug in 21.7.2.0 or a breaking change requiring an update?

Edit: for those who don't know (like me before yesterday!) that isolate in the line I think is a v8::Isolate, i.e. part of V8 proper and not mini_racer.

Can confirm a downgrade of libv8-node fixed the issue.

noctivityinc commented 5 months ago

I'm having the exact same issues and have three crash reports I can share if that will help. Ruby 3.3.2 on heroku with Rails 6.1.7.7. Segmentation fault is always here:

2024-06-03T03:53:04.924655+00:00 app[web.1]: /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:228: [BUG] Segmentation fault at 0x00007ff1507a0008
2024-06-03T03:53:04.924685+00:00 app[web.1]: ruby 3.3.2 (2024-05-30 revision e5a195edf6) [x86_64-linux]
2024-06-03T03:53:04.924686+00:00 app[web.1]:
2024-06-03T03:53:04.924687+00:00 app[web.1]: -- Control frame information -----------------------------------------------
2024-06-03T03:53:04.924687+00:00 app[web.1]: c:0133 p:---- s:0879 e:000878 CFUNC  :eval_unsafe
2024-06-03T03:53:04.924689+00:00 app[web.1]: c:0132 p:0009 s:0873 e:000872 BLOCK  /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:228
2024-06-03T03:53:04.924689+00:00 app[web.1]: c:0131 p:0010 s:0870 e:000869 METHOD /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:348
2024-06-03T03:53:04.924690+00:00 app[web.1]: c:0130 p:0008 s:0859 e:000858 BLOCK  /app/vendor/bundle/ruby/3.3.0/gems/mini_racer-0.12.0/lib/mini_racer.rb:227 [FINISH]
2024-06-03T03:53:04.924690+00:00 app[web.1]: c:0129 p:---- s:0856 e:000855 CFUNC  :synchronize
2024-

I can provide more if needed.