Issue #11946 has been updated by Fred Ngo.


Confirming for me also. I have traced the problem to this line:

https://github.com/rails/rails/blob/v4.2.5/actionpack/lib/action_dispatch/routing/route_set.rb#L546

in the call to name.to_s.match(/^[_a-z]\w*$/i). Specifically, when match() is called.

The strange thing is that when I substitute name.to_s.freeze.match(/^[_a-z]\w*$/i) then it passes without the core dump failure.

The other thing is that this line doesn't always fail, it only fails on some routes. I have no idea why, because the name is always a string class, and a valid string. 

Ruby 2.3.0
Rails 4.2.5

As Felix says, this is no a problem with Ruby 2.2.4.



----------------------------------------
Bug #11946: Assertion failed: (!STR_EMBED_P(shared)), function str_new_frozen, file string.c, line 1075.
https://bugs.ruby-lang.org/issues/11946#change-56154

* Author: Felix Mohnert
* Status: Open
* Priority: Normal
* Assignee: Nobuyoshi Nakada
* ruby -v: 2.3.0
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN
----------------------------------------
Starting the Rails server or running specs for one of our applications results in:

~~~
Assertion failed: (!STR_EMBED_P(shared)), function str_new_frozen, file string.c, line 1075.
Abort trap: 6
~~~

Previous Ruby versions didn't cause a problem. I wasn't able to to find out what exactly causes it, if you know how to produce a better log here, I'm glad to provide it.



-- 
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>