[ruby-core:102136] [Ruby master Bug#17553] Rails CI shows infinite loop of method_missing since f4ce78d5c139a8825ee2d09f39aef03ef762dfc6
From:
yasuo.honda@...
Date:
2021-01-18 10:32:27 UTC
List:
ruby-core #102136
Issue #17553 has been reported by yahonda (Yasuo Honda).
----------------------------------------
Bug #17553: Rails CI shows infinite loop of method_missing since f4ce78d5c139a8825ee2d09f39aef03ef762dfc6
https://bugs.ruby-lang.org/issues/17553
* Author: yahonda (Yasuo Honda)
* Status: Open
* Priority: Normal
* ruby -v: ruby 3.1.0dev (2021-01-14T00:06:39Z master f4ce78d5c1) [x86_64-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN
----------------------------------------
### Steps to reproduce
```
git clone https://github.com/rails/rails.git
cd rails/activerecord
bundle install
bin/test test/cases/relations_test.rb test/cases/callbacks_test.rb test/cases/finder_test.rb -n "/^(?:RelationTest#(?:test_dynamic_find
er)|CallbacksTest#(?:test_before_destroy_throwing_abort)|FinderTest#(?:test_find_by_id_with_hash))$/" --seed 64098
```
### Expected results
It should pass.
### Actual Results
```
:0
Using sqlite3
Run options: -n "/^(?:RelationTest#(?:test_dynamic_finder)|CallbacksTest#(?:test_before_destroy_throwing_abort)|FinderTest#(?:test_find_by_id_with_hash))$/" --seed 64098
# Running:
..E
Error:
FinderTest#test_find_by_id_with_hash:
SystemStackError: stack level too deep
/home/yahonda/src/github.com/rails/rails/activerecord/lib/active_record/dynamic_matchers.rb:33:in `block in match'
/home/yahonda/src/github.com/rails/rails/activerecord/lib/active_record/dynamic_matchers.rb:33:in `each'
/home/yahonda/src/github.com/rails/rails/activerecord/lib/active_record/dynamic_matchers.rb:33:in `find'
/home/yahonda/src/github.com/rails/rails/activerecord/lib/active_record/dynamic_matchers.rb:33:in `match'
/home/yahonda/src/github.com/rails/rails/activerecord/lib/active_record/dynamic_matchers.rb:16:in `method_missing'
... repeat about 8700 times ...
/home/yahonda/src/github.com/rails/rails/activerecord/lib/active_record/dynamic_matchers.rb:20:in `method_missing'
/home/yahonda/src/github.com/rails/rails/activerecord/test/cases/finder_test.rb:33:in `block in test_find_by_id_with_hash'
/home/yahonda/src/github.com/rails/rails/activesupport/lib/active_support/testing/assertions.rb:34:in `assert_nothing_raised'
/home/yahonda/src/github.com/rails/rails/activerecord/test/cases/finder_test.rb:32:in `test_find_by_id_with_hash'
bin/test test/cases/finder_test.rb:31
Finished in 0.203552s, 14.7383 runs/s, 39.3020 assertions/s.
3 runs, 8 assertions, 0 failures, 1 errors, 0 skips
```
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>