From: yasuo.honda@... Date: 2020-10-27T12:48:27+00:00 Subject: [ruby-core:100602] [Ruby master Bug#17213] Rails CI against Ruby 3.0.0dev fails likely since a53e2850c572135ed657144bc14e47b29c64fa94 Issue #17213 has been updated by yahonda (Yasuo Honda). File log.log.gz added It also reproduces with the latest `rubylang/ruby:master-debug-nightly-bionic` which generate large log file like assetions. Attached the gzipped log file to this ticket. * Reproduced with `rubylang/ruby:master-debug-nightly-bionic` ``` git clone https://github.com/rails/rails.git cd rails git clone https://github.com/rails/buildkite-config .buildkite/ RUBY_IMAGE=rubylang/ruby:master-debug-nightly-bionic docker-compose -f .buildkite/docker-compose.yml build base && CI=1 docker-compose -f .buildkite/docker-compose.yml run default runner railties 'ruby -v ; ruby -w -Itest -Ilib -I../activesupport/lib -I../actionpack/lib -I../actionview/lib -I../activemodel/lib test/railties/engine_test.rb --seed 31510' | tee log.log 2>&1 ``` ---------------------------------------- Bug #17213: Rails CI against Ruby 3.0.0dev fails likely since a53e2850c572135ed657144bc14e47b29c64fa94 https://bugs.ruby-lang.org/issues/17213#change-88233 * Author: yahonda (Yasuo Honda) * Status: Open * Priority: Normal * ruby -v: ruby 2.8.0dev (2020-05-21T19:08:38Z v3_0_0_preview1~1778 a53e2850c5) [x86_64-linux] * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN ---------------------------------------- Rails CI against Ruby 3.0.0dev fails likely since a53e2850c572135ed657144bc14e47b29c64fa94 . This is the oldest failure https://buildkite.com/rails/rails/builds/69461#777c707f-7056-4959-9924-36dac592b737 ## Steps to reproduce 1. Install Docker 2. Install Ruby 2.7.1 (or whatever Ruby version to run rake) 3. Create Ruby docker image for a53e2850c572135ed657144bc14e47b29c64fa94 ```ruby git clone https://github.com/ruby/ruby-docker-images.git cd ruby-docker-images rake docker:build ruby_version=master:a53e2850c572135ed657144bc14e47b29c64fa94 ``` 4. Run Rails CI using the Docker image created in step 3 ```ruby cd ~ git clone https://github.com/rails/rails.git cd rails git clone https://github.com/rails/buildkite-config .buildkite/ RUBY_IMAGE=rubylang/ruby:master-a53e2850c572135ed657144bc14e47b29c64fa94-bionic docker-compose -f .buildkite/docker-compose.yml build base && CI=1 docker-compose -f .buildkite/docker-compose.yml run default runner railties 'ruby -v ; ruby -w -Itest -Ilib -I../activesupport/lib -I../actionpack/lib -I../actionview/lib -I../activemodel/lib test/railties/engine_test.rb --seed 31510' ``` ## Actual result ```ruby $ RUBY_IMAGE=rubylang/ruby:master-a53e2850c572135ed657144bc14e47b29c64fa94-bionic docker-compose -f .buildkite/docker-compose.yml build base && CI=1 docker-compose -f .buildkite/docker-compose.yml run default runner railties 'ruby -v ; ruby -w -Itest -Ilib -I../activesupport/lib -I../actionpack/lib -I../actionview/lib -I../activemodel/lib test/railties/engine_test.rb --seed 31510' ... snip ... +++ railties: ruby -v ; ruby -w -Itest -Ilib -I../activesupport/lib -I../actionpack/lib -I../actionview/lib -I../activemodel/lib test/railties/engine_test.rb --seed 31510 ruby 2.8.0dev (2020-05-21T19:08:38Z v3_0_0_preview1~1778 a53e2850c5) [x86_64-linux] warning @rails/webpacker > webpack > watchpack > watchpack-chokidar2 > chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies. warning @rails/webpacker > webpack > watchpack > watchpack-chokidar2 > chokidar > fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2. warning @rails/webpacker > webpack > micromatch > snapdragon > source-map-resolve > resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated warning @rails/webpacker > webpack > micromatch > snapdragon > source-map-resolve > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32454: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32615: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32651: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32740: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32756: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32822: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32863: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32888: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:31984: warning: assigned but unused variable - testEof Run options: --seed 31510 # Running: /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34: [BUG] Segmentation fault at 0x0000000000000000 ruby 2.8.0dev (2020-05-21T19:08:38Z v3_0_0_preview1~1778 a53e2850c5) [x86_64-linux] -- Control frame information ----------------------------------------------- c:0047 p:---- s:0255 e:000254 CFUNC :require c:0046 p:0052 s:0250 e:000249 METHOD /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34 [FINISH] c:0045 p:0447 s:0244 e:000240 CLASS /rails/activerecord/lib/active_record/base.rb:300 c:0044 p:0007 s:0238 e:000237 CLASS /rails/activerecord/lib/active_record/base.rb:265 c:0043 p:0073 s:0235 e:000234 TOP /rails/activerecord/lib/active_record/base.rb:15 [FINISH] c:0042 p:---- s:0232 e:000231 CFUNC :require c:0041 p:0052 s:0227 e:000226 METHOD /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34 [FINISH] c:0040 p:0023 s:0221 e:000218 METHOD /rails/activerecord/lib/active_record/railties/controller_runtime.rb:31 c:0039 p:0008 s:0212 e:000210 METHOD /rails/actionpack/lib/action_controller/metal/instrumentation.rb:45 c:0038 p:0021 s:0205 e:000204 METHOD /rails/actionpack/lib/action_controller/metal/implicit_render.rb:35 c:0037 p:0011 s:0200 e:000199 BLOCK /rails/actionpack/lib/action_controller/metal/basic_implicit_render.rb:6 [FINISH] c:0036 p:---- s:0197 e:000196 CFUNC :tap c:0035 p:0013 s:0193 e:000192 METHOD /rails/actionpack/lib/action_controller/metal/basic_implicit_render.rb:6 c:0034 p:0009 s:0187 e:000186 METHOD /rails/actionpack/lib/abstract_controller/base.rb:228 c:0033 p:0024 s:0181 e:000180 METHOD /rails/actionpack/lib/action_controller/metal/rendering.rb:30 c:0032 p:0009 s:0176 e:000175 BLOCK /rails/actionpack/lib/abstract_controller/callbacks.rb:42 c:0031 p:0090 s:0173 e:000171 METHOD /rails/activesupport/lib/active_support/callbacks.rb:106 c:0030 p:0006 s:0163 e:000162 METHOD /rails/actionpack/lib/abstract_controller/callbacks.rb:41 c:0029 p:0008 s:0158 e:000157 METHOD /rails/actionpack/lib/action_controller/metal/rescue.rb:22 c:0028 p:0009 s:0152 e:000151 BLOCK /rails/actionpack/lib/action_controller/metal/instrumentation.rb:34 c:0027 p:0010 s:0147 e:000146 BLOCK /rails/activesupport/lib/active_support/notifications.rb:203 c:0026 p:0022 s:0144 e:000143 METHOD /rails/activesupport/lib/active_support/notifications/instrumenter.rb:24 c:0025 p:0023 s:0136 e:000135 METHOD /rails/activesupport/lib/active_support/notifications.rb:203 c:0024 p:0098 s:0130 e:000129 METHOD /rails/actionpack/lib/action_controller/metal/instrumentation.rb:33 c:0023 p:0017 s:0124 e:000123 METHOD /rails/actionpack/lib/action_controller/metal/params_wrapper.rb:245 c:0022 p:0026 s:0119 e:000118 METHOD /rails/activerecord/lib/active_record/railties/controller_runtime.rb:27 c:0021 p:0082 s:0113 e:000112 METHOD /rails/actionpack/lib/abstract_controller/base.rb:165 c:0020 p:0062 s:0106 e:000105 METHOD /rails/actionview/lib/action_view/rendering.rb:39 c:0019 p:0017 s:0100 e:000099 METHOD /rails/actionpack/lib/action_controller/metal.rb:190 # terminated with exception (report_on_exception is true): /rails/activesupport/lib/active_support/testing/isolation.rb:23:in `load': marshal data too short (ArgumentError) from /rails/activesupport/lib/active_support/testing/isolation.rb:23:in `run' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest.rb:1029:in `run_one_method' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/parallel.rb:33:in `block (2 levels) in start' /rails/activesupport/lib/active_support/testing/isolation.rb:23:in `load': marshal data too short (ArgumentError) from /rails/activesupport/lib/active_support/testing/isolation.rb:23:in `run' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest.rb:1029:in `run_one_method' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/parallel.rb:33:in `block (2 levels) in start' $ ``` ### Expected result It should not cause segmentation fault as the previous commit ba7f4bb0af82bc9a7e392608fd7f6a316bec7c9f ``` $ RUBY_IMAGE=rubylang/ruby:master-ba7f4bb0af82bc9a7e392608fd7f6a316bec7c9f-bionic docker-compose -f .buildkite/docker-compose.yml build base && CI=1 docker-compose -f .buildkite/docker-compose.yml run default runner railties 'ruby -v ; ruby -w -Itest -Ilib -I../activesupport/lib -I../actionpack/lib -I../actionview/lib -I../activemodel/lib test/railties/engine_test.rb --seed 31510' ... snip ... +++ railties: ruby -v ; ruby -w -Itest -Ilib -I../activesupport/lib -I../actionpack/lib -I../actionview/lib -I../activemodel/lib test/railties/engine_test.rb --seed 31510 ruby 2.8.0dev (2020-05-21T04:31:36Z v3_0_0_preview1~1779 ba7f4bb0af) [x86_64-linux] warning @rails/webpacker > webpack > watchpack > watchpack-chokidar2 > chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies. warning @rails/webpacker > webpack > watchpack > watchpack-chokidar2 > chokidar > fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2. warning @rails/webpacker > webpack > micromatch > snapdragon > source-map-resolve > resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated warning @rails/webpacker > webpack > micromatch > snapdragon > source-map-resolve > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32454: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32615: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32651: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32740: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32756: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32822: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32863: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:32888: warning: statement not reached /usr/local/lib/ruby/gems/2.8.0/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb:31984: warning: assigned but unused variable - testEof Run options: --seed 31510 # Running: .............../usr/local/lib/ruby/gems/2.8.0/gems/delayed_job-4.1.8/lib/delayed/worker.rb:288: warning: method redefined; discarding old max_attempts /usr/local/lib/ruby/gems/2.8.0/gems/delayed_job-4.1.8/lib/delayed/worker.rb:22: warning: previous definition of max_attempts was here /usr/local/lib/ruby/gems/2.8.0/gems/delayed_job-4.1.8/lib/delayed/worker.rb:292: warning: method redefined; discarding old max_run_time /usr/local/lib/ruby/gems/2.8.0/gems/delayed_job-4.1.8/lib/delayed/worker.rb:22: warning: previous definition of max_run_time was here /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34: warning: /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34: warning: loading in progress, circular require considered harmful - /usr/local/lib/ruby/gems/2.8.0/gems/delayed_job-4.1.8/lib/delayed_job.rb from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/parallel.rb:33:in `block (2 levels) in start' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest.rb:1029:in `run_one_method' from /rails/activesupport/lib/active_support/testing/isolation.rb:19:in `run' from /rails/activesupport/lib/active_support/testing/isolation.rb:32:in `run_in_isolation' from /rails/activesupport/lib/active_support/testing/isolation.rb:32:in `fork' from /rails/activesupport/lib/active_support/testing/isolation.rb:34:in `block in run_in_isolation' from /rails/activesupport/lib/active_support/testing/isolation.rb:20:in `block in run' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/test.rb:93:in `run' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/test.rb:211:in `with_info_handler' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest.rb:367:in `on_signal' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/test.rb:94:in `block in run' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest.rb:272:in `time_it' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/test.rb:95:in `block (2 levels) in run' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/test.rb:195:in `capture_exceptions' from /usr/local/lib/ruby/gems/2.8.0/gems/minitest-5.14.2/lib/minitest/test.rb:98:in `block (3 levels) in run' from test/railties/engine_test.rb:901:in `block in ' from /rails/railties/lib/rails/engine.rb:560:in `load_seed' from /rails/railties/lib/rails/engine.rb:560:in `load' from /rails/tmp/d20201003-137-ay5nkq/app/db/seeds.rb:1:in `' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /rails/activejob/lib/active_job/base.rb:17:in `' from /rails/activejob/lib/active_job/base.rb:63:in `' from /rails/activejob/lib/active_job/base.rb:77:in `' from /rails/activesupport/lib/active_support/lazy_load_hooks.rb:51:in `run_load_hooks' from /rails/activesupport/lib/active_support/lazy_load_hooks.rb:51:in `each' from /rails/activesupport/lib/active_support/lazy_load_hooks.rb:52:in `block in run_load_hooks' from /rails/activesupport/lib/active_support/lazy_load_hooks.rb:66:in `execute_hook' from /rails/activesupport/lib/active_support/lazy_load_hooks.rb:61:in `with_execution_control' from /rails/activesupport/lib/active_support/lazy_load_hooks.rb:71:in `block in execute_hook' from /rails/activesupport/lib/active_support/lazy_load_hooks.rb:71:in `class_eval' from /rails/activejob/lib/active_job/railtie.rb:28:in `block (2 levels) in ' from /rails/activejob/lib/active_job/railtie.rb:28:in `each' from /rails/activejob/lib/active_job/railtie.rb:30:in `block (3 levels) in ' from /rails/activejob/lib/active_job/queue_adapter.rb:40:in `queue_adapter=' from /rails/activejob/lib/active_job/queue_adapters.rb:137:in `lookup' from /rails/activejob/lib/active_job/queue_adapters.rb:137:in `const_get' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /rails/activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb:3:in `' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /usr/local/lib/ruby/gems/2.8.0/gems/delayed_job-4.1.8/lib/delayed_job.rb:14:in `' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /usr/local/lib/ruby/gems/2.8.0/gems/delayed_job-4.1.8/lib/delayed/railtie.rb:1:in `' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' from /usr/local/lib/ruby/gems/2.8.0/gems/zeitwerk-2.4.0/lib/zeitwerk/kernel.rb:34:in `require' ......................../usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:194: warning: assigned but unused variable - pr /usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:252: warning: assigned but unused variable - fpr /usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:253: warning: assigned but unused variable - fb /usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:259: warning: assigned but unused variable - tb .........../usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:194: warning: assigned but unused variable - pr /usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:252: warning: assigned but unused variable - fpr /usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:253: warning: assigned but unused variable - fb /usr/local/lib/ruby/gems/2.8.0/gems/semantic_range-2.3.0/lib/semantic_range/range.rb:259: warning: assigned but unused variable - tb .. Finished in 34.113826s, 1.4950 runs/s, 3.4883 assertions/s. 51 runs, 119 assertions, 0 failures, 0 errors, 0 skips $ ``` ---Files-------------------------------- log.log.gz (60.8 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: