ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
@ 2013-12-07 16:17 myronmarston (Myron Marston)
  2013-12-07 23:29 ` [ruby-core:58950] [ruby-trunk - Bug #9226] " tmm1 (Aman Gupta)
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: myronmarston (Myron Marston) @ 2013-12-07 16:17 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been reported by myronmarston (Myron Marston).

----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226

Author: myronmarston (Myron Marston)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58950] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
@ 2013-12-07 23:29 ` tmm1 (Aman Gupta)
  2013-12-08  0:10 ` [ruby-core:58951] " charliesome (Charlie Somerville)
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: tmm1 (Aman Gupta) @ 2013-12-07 23:29 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by tmm1 (Aman Gupta).


I was able to reproduce this on trunk with the following patch to rspec:

--- a/lib/rspec/core/command_line.rb
+++ b/lib/rspec/core/command_line.rb
@@ -20,6 +20,7 @@ module RSpec
         @configuration.output_stream = out if @configuration.output_stream == $stdout
         @options.configure(@configuration)
         @configuration.load_spec_files
+        GC.stress=true
         @world.announce_filters

         @configuration.reporter.report(@world.example_count) do |reporter|

With the patch, you can see different results during `script/rspec_with_simplecov spec -b --format progress` boot due to object re-use:

  exclude {:ruby=>#<Proc:./spec/spec_helper.rb:149>}
  exclude {:ruby=>RSpec::ExampleGroups::RSpecCoreConfiguration::SeedUsed}
  exclude {:ruby=>#<RubyVM::Env:0x007ff5ec199198>}

I noticed that RSpec::Core::FilterManager was using Hash#merge, and after some debugging I confirmed that the following patch fixes this issue on trunk:

--- a/hash.c
+++ b/hash.c
@@ -1429,6 +1429,7 @@ rb_hash_replace(VALUE hash, VALUE hash2)
        st_table *old_table = RHASH(hash)->ntbl;
        if (old_table) st_free_table(old_table);
        RHASH(hash)->ntbl = st_copy(table2);
+       OBJ_WB_UNPROTECT(hash);
     }

     return hash;
----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43498

Author: myronmarston (Myron Marston)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58951] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
  2013-12-07 23:29 ` [ruby-core:58950] [ruby-trunk - Bug #9226] " tmm1 (Aman Gupta)
@ 2013-12-08  0:10 ` charliesome (Charlie Somerville)
  2013-12-08  0:11 ` [ruby-core:58952] " tmm1 (Aman Gupta)
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: charliesome (Charlie Somerville) @ 2013-12-08  0:10 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by charliesome (Charlie Somerville).


Instead of shading the hash, we could probably do something like this:

diff --git hash.c hash.c
index a52e02f..e7a505e 100644
--- hash.c
+++ hash.c
@@ -1414,22 +1414,9 @@ rb_hash_replace(VALUE hash, VALUE hash2)
 
     table2 = RHASH(hash2)->ntbl;
 
-    if (RHASH_EMPTY_P(hash2)) {
-	rb_hash_clear(hash);
-	if (table2) hash_tbl(hash)->type = table2->type;
-	return hash;
-    }
-
-    if (RHASH_ITER_LEV(hash) > 0) {
-	rb_hash_clear(hash);
-	hash_tbl(hash)->type = table2->type;
-	rb_hash_foreach(hash2, replace_i, hash);
-    }
-    else {
-	st_table *old_table = RHASH(hash)->ntbl;
-	if (old_table) st_free_table(old_table);
-	RHASH(hash)->ntbl = st_copy(table2);
-    }
+    rb_hash_clear(hash);
+    hash_tbl(hash)->type = table2->type;
+    rb_hash_foreach(hash2, replace_i, hash);
 
     return hash;
 }

----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43499

Author: myronmarston (Myron Marston)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58952] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
  2013-12-07 23:29 ` [ruby-core:58950] [ruby-trunk - Bug #9226] " tmm1 (Aman Gupta)
  2013-12-08  0:10 ` [ruby-core:58951] " charliesome (Charlie Somerville)
@ 2013-12-08  0:11 ` tmm1 (Aman Gupta)
  2013-12-08  2:51 ` [ruby-core:58958] " ko1 (Koichi Sasada)
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: tmm1 (Aman Gupta) @ 2013-12-08  0:11 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by tmm1 (Aman Gupta).

Category set to core
Assignee set to ko1 (Koichi Sasada)
Priority changed from Normal to High


----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43500

Author: myronmarston (Myron Marston)
Status: Open
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58958] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
                   ` (2 preceding siblings ...)
  2013-12-08  0:11 ` [ruby-core:58952] " tmm1 (Aman Gupta)
@ 2013-12-08  2:51 ` ko1 (Koichi Sasada)
  2013-12-08  3:06 ` [ruby-core:58959] " tmm1 (Aman Gupta)
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: ko1 (Koichi Sasada) @ 2013-12-08  2:51 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by ko1 (Koichi Sasada).


I like charliesome's approach.
Could you commit it?

----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43508

Author: myronmarston (Myron Marston)
Status: Open
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58959] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
                   ` (3 preceding siblings ...)
  2013-12-08  2:51 ` [ruby-core:58958] " ko1 (Koichi Sasada)
@ 2013-12-08  3:06 ` tmm1 (Aman Gupta)
  2013-12-08  6:27 ` [ruby-core:58960] [ruby-trunk - Bug #9226][Open] " ko1 (Koichi Sasada)
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: tmm1 (Aman Gupta) @ 2013-12-08  3:06 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by tmm1 (Aman Gupta).


Committed.

I was surprised but RGENGC_CHECK did not find this issue.
----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43510

Author: myronmarston (Myron Marston)
Status: Closed
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58960] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
                   ` (4 preceding siblings ...)
  2013-12-08  3:06 ` [ruby-core:58959] " tmm1 (Aman Gupta)
@ 2013-12-08  6:27 ` ko1 (Koichi Sasada)
  2013-12-08  8:32 ` [ruby-core:58964] [ruby-trunk - Bug #9226] " myronmarston (Myron Marston)
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: ko1 (Koichi Sasada) @ 2013-12-08  6:27 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by ko1 (Koichi Sasada).

Status changed from Closed to Open
% Done changed from 100 to 0

OMG That is another issue....

----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43512

Author: myronmarston (Myron Marston)
Status: Open
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58964] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
                   ` (5 preceding siblings ...)
  2013-12-08  6:27 ` [ruby-core:58960] [ruby-trunk - Bug #9226][Open] " ko1 (Koichi Sasada)
@ 2013-12-08  8:32 ` myronmarston (Myron Marston)
  2013-12-08  8:32 ` [ruby-core:58965] " myronmarston (Myron Marston)
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: myronmarston (Myron Marston) @ 2013-12-08  8:32 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by myronmarston (Myron Marston).


Wow, thanks for the quick fix :).
----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43514

Author: myronmarston (Myron Marston)
Status: Open
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:58965] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
                   ` (6 preceding siblings ...)
  2013-12-08  8:32 ` [ruby-core:58964] [ruby-trunk - Bug #9226] " myronmarston (Myron Marston)
@ 2013-12-08  8:32 ` myronmarston (Myron Marston)
  2013-12-10  4:13 ` [ruby-core:59016] " tmm1 (Aman Gupta)
  2013-12-10  5:48 ` [ruby-core:59018] " tmm1 (Aman Gupta)
  9 siblings, 0 replies; 11+ messages in thread
From: myronmarston (Myron Marston) @ 2013-12-08  8:32 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by myronmarston (Myron Marston).


Wow, thanks for the quick fix :).
----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43515

Author: myronmarston (Myron Marston)
Status: Open
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:59016] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
                   ` (7 preceding siblings ...)
  2013-12-08  8:32 ` [ruby-core:58965] " myronmarston (Myron Marston)
@ 2013-12-10  4:13 ` tmm1 (Aman Gupta)
  2013-12-10  5:48 ` [ruby-core:59018] " tmm1 (Aman Gupta)
  9 siblings, 0 replies; 11+ messages in thread
From: tmm1 (Aman Gupta) @ 2013-12-10  4:13 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by tmm1 (Aman Gupta).


With r44059, I can reproduce this issue with the following ruby code. I confirmed RGENGC_CHECK=2 does not complain.

def create_oldgen_hash
  @h1 = {}
  GC.start
end

def replace_with_young_hash
  h2 = {"a"=>"b"}
  @h1.replace(h2)
  h2 = nil
end

create_oldgen_hash
replace_with_young_hash
GC.start(full_mark:false,immediate_sweep:false)
p @h1


----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43566

Author: myronmarston (Myron Marston)
Status: Open
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:59018] [ruby-trunk - Bug #9226] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
  2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
                   ` (8 preceding siblings ...)
  2013-12-10  4:13 ` [ruby-core:59016] " tmm1 (Aman Gupta)
@ 2013-12-10  5:48 ` tmm1 (Aman Gupta)
  9 siblings, 0 replies; 11+ messages in thread
From: tmm1 (Aman Gupta) @ 2013-12-10  5:48 UTC (permalink / raw
  To: ruby-core


Issue #9226 has been updated by tmm1 (Aman Gupta).


After r44109, RGENGC_CHECK_MODE is able to detect the original Hash#replace miss issue:

$ ./miniruby test1.rb
gc_marks_check_i: WB miss 0x7fb33b053bb0 (T_HASH) -> 0x7fb33b033f90 (T_STRING)
test1.rb:15: [BUG] before_marks: GC has problem.

----------------------------------------
Bug #9226: Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect
https://bugs.ruby-lang.org/issues/9226#change-43569

Author: myronmarston (Myron Marston)
Status: Closed
Priority: High
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: current: 2.1.0
ruby -v: 2.1.0.preview2
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


We're trying to get a green RSpec build against ruby 2.1.0.preview2, and we're getting this very odd failure on travis:

https://travis-ci.org/rspec/rspec-core/jobs/15066502#L122

The line where it's failing is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/lib/rspec/core/filter_manager.rb#L75

It's calling `inspect` on a Hash and blowing up with that confusing error.  The hash that's causing this failure (if that helps) is here:

https://github.com/rspec/rspec-core/blob/2e77a83d92eb1e661398f00359fc784da019401a/spec/spec_helper.rb#L149-L158

It's the `{ :ruby => lambda { } }` hash being passed to `filter_run_excluding`.


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2013-12-10  6:13 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-07 16:17 [ruby-core:58948] [ruby-trunk - Bug #9226][Open] Getting method `inspect' called on unexpected T_NODE object (0x000000025ddea8 flags=0x109089c klass=0x0) (NotImplementedError) from Hash#inspect myronmarston (Myron Marston)
2013-12-07 23:29 ` [ruby-core:58950] [ruby-trunk - Bug #9226] " tmm1 (Aman Gupta)
2013-12-08  0:10 ` [ruby-core:58951] " charliesome (Charlie Somerville)
2013-12-08  0:11 ` [ruby-core:58952] " tmm1 (Aman Gupta)
2013-12-08  2:51 ` [ruby-core:58958] " ko1 (Koichi Sasada)
2013-12-08  3:06 ` [ruby-core:58959] " tmm1 (Aman Gupta)
2013-12-08  6:27 ` [ruby-core:58960] [ruby-trunk - Bug #9226][Open] " ko1 (Koichi Sasada)
2013-12-08  8:32 ` [ruby-core:58964] [ruby-trunk - Bug #9226] " myronmarston (Myron Marston)
2013-12-08  8:32 ` [ruby-core:58965] " myronmarston (Myron Marston)
2013-12-10  4:13 ` [ruby-core:59016] " tmm1 (Aman Gupta)
2013-12-10  5:48 ` [ruby-core:59018] " tmm1 (Aman Gupta)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).