[MacRuby] #972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1
#972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1 ------------------------------+--------------------------------------------- Reporter: jon@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: ------------------------------+--------------------------------------------- When attempting to use the RSpec 2.0.1 rake task in a project using Bundler 1.0.2 I see a segfault when rspec is run by the rake task. This does not occur if a Gemfile isn't present in the current directory. This may be related to an error I'm seeing from Bundler when using bundle exec: "Could not find task exec" Code to reproduce can be found at http://github.com/jellybob/macruby- segfault and run with the following process: $ macgem install bundler $ macruby -S bundle install $ macrake spec -- Ticket URL: <http://www.macruby.org/trac/ticket/972> MacRuby <http://macruby.org/>
#972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1 ------------------------------+--------------------------------------------- Reporter: jon@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: ------------------------------+--------------------------------------------- Comment(by eloy.de.enige@…): On trunk, when I run the task without the Gemfile present, I don't get a segfault but it does error out: {{{ % macrake spec (in /Users/eloy/tmp/macruby-bugmash/macruby-segfault) /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/bin/macruby -S rspec "spec/utility/rspec_spec.rb" rake aborted! ruby -S rspec "spec/utility/rspec_spec.rb" failed /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems /rspec-core-2.0.1/lib/rspec/core/rake_task.rb:117:in `block' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:1110:in `verbose:' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems /rspec-core-2.0.1/lib/rspec/core/rake_task.rb:109:in `block' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:634:in `block' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:629:in `execute:' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:595:in `block' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/monitor.rb:201:in `synchronize' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:588:in `invoke_with_call_chain:' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:581:in `invoke' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:2042:in `invoke_task:' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:2020:in `block' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:2020:in `block' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:2059:in `standard_exception_handling' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:2014:in `top_level' /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/rake.rb:1993:in `run' /usr/local/bin/macrake:31:in `<main>' }}} Investigating more… -- Ticket URL: <http://www.macruby.org/trac/ticket/972#comment:1> MacRuby <http://macruby.org/>
#972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1 ------------------------------+--------------------------------------------- Reporter: jon@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: ------------------------------+--------------------------------------------- Comment(by eloy.de.enige@…): Ah my bad, it actually does: {{{ % env DYLD_LIBRARY_PATH=/Users/eloy/code/MacRuby/macruby gdb --args /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/bin/macruby -S rspec "spec/utility/rspec_spec.rb" GNU gdb 6.3.50-20050815 (Apple version gdb-1472) (Wed Jul 21 10:53:12 UTC 2010) This GDB was configured as "x86_64-apple-darwin"...Reading symbols for shared libraries ..... done (gdb) run Starting program: /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/bin/macruby -S rspec spec/utility/rspec_spec.rb Reading symbols for shared libraries .++++........................ done Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_PROTECTION_FAILURE at address: 0x00007fff5f3ffed8 0x0000000100149844 in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea0b20, top=0, self=8593923456, klass=0x20000f760, sel=0x100f70890, block=0x0, opt=2 '\002', argc=1, argv=0x7fff5f400768) at dispatcher.cpp:582 582 int argc, const VALUE *argv) (gdb) bt #0 0x0000000100149844 in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea0b20, top=0, self=8593923456, klass=0x20000f760, sel=0x100f70890, block=0x0, opt=2 '\002', argc=1, argv=0x7fff5f400768) at dispatcher.cpp:582 #1 0x000000010006d05c in rb_equal [inlined] () at /Users/eloy/Documents/DEVELOPMENT/MacRuby/macruby/object.c:601 #2 0x000000010006d05c in rb_equal_imp (obj1=8593923456, sel=<value temporarily unavailable, due to optimizations>, obj2=<value temporarily unavailable, due to optimizations>) at object.c:77 #3 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea46a0, top=0, self=8593923456, klass=0x20000f760, sel=0x100f43960, block=0x0, opt=0 '\000', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5f4014c8) at dispatcher.cpp:161 [SNIP endless loop] #7244 0x000000010160086c in ?? () #7245 0x0000000101665266 in ?? () #7246 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100eb0d40, top=0, self=140735083045992, klass=0x7fff70a1e440, sel=0x100fb7790, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbf5db0) at dispatcher.cpp:161 #7247 0x0000000100105a9f in rb_funcall (recv=140735083045992, mid=<value temporarily unavailable, due to optimizations>, n=1) at vm.h:601 #7248 0x00000001000ed90f in rb_const_get_0 (klass=140735083045992, id=34605, exclude=0, recurse=2) at variable.c:1294 #7249 0x00000001001538c4 in rb_vm_const_lookup (outer=140735083045992, path=34605, lexical=true, defined=false) at vm.cpp:1265 #7250 0x0000000101600546 in ?? () #7251 0x00000001016738db in ?? () #7252 0x0000000100162923 in rb_vm_run (fname=<value temporarily unavailable, due to optimizations>, node=0x2003f8c60, binding=<value temporarily unavailable, due to optimizations>, inside_eval=false) at vm.cpp:3915 #7253 0x0000000100049761 in rb_load (fname=<value temporarily unavailable, due to optimizations>, wrap=<value temporarily unavailable, due to optimizations>) at load.c:103 #7254 0x00000001000497db in load_try (path=<value temporarily unavailable, due to optimizations>) at load.c:259 #7255 0x000000010015c35a in rb_rescue2 (b_proc=<value temporarily unavailable, due to optimizations>, data1=<value temporarily unavailable, due to optimizations>, r_proc=0x1000496b0 <load_rescue>, data2=8594252160) at vm.cpp:3477 #7256 0x0000000100049f6f in rb_require_safe (fname=<value temporarily unavailable, due to optimizations>, safe=<value temporarily unavailable, due to optimizations>) at load.c:305 #7257 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x10480c520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbf7428) at dispatcher.cpp:161 #7258 0x00000001013fd094 in dyld_stub_strncpy () #7259 0x00000001013fd53d in MREP_DAC7B080100B46A6A870BEC813155D0E () #7260 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x100f3b520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbf81a0) at dispatcher.cpp:161 #7261 0x000000010160086c in ?? () #7262 0x000000010167381d in ?? () #7263 0x0000000100162923 in rb_vm_run (fname=<value temporarily unavailable, due to optimizations>, node=0x20042a200, binding=<value temporarily unavailable, due to optimizations>, inside_eval=false) at vm.cpp:3915 #7264 0x0000000100049761 in rb_load (fname=<value temporarily unavailable, due to optimizations>, wrap=<value temporarily unavailable, due to optimizations>) at load.c:103 #7265 0x00000001000497db in load_try (path=<value temporarily unavailable, due to optimizations>) at load.c:259 #7266 0x000000010015c35a in rb_rescue2 (b_proc=<value temporarily unavailable, due to optimizations>, data1=<value temporarily unavailable, due to optimizations>, r_proc=0x1000496b0 <load_rescue>, data2=8594393280) at vm.cpp:3477 #7267 0x0000000100049f6f in rb_require_safe (fname=<value temporarily unavailable, due to optimizations>, safe=<value temporarily unavailable, due to optimizations>) at load.c:305 #7268 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x10480c520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbf9538) at dispatcher.cpp:161 #7269 0x00000001013fd094 in dyld_stub_strncpy () #7270 0x00000001013fd53d in MREP_DAC7B080100B46A6A870BEC813155D0E () #7271 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x100f3b520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbfa2b0) at dispatcher.cpp:161 #7272 0x000000010160086c in ?? () #7273 0x000000010161d85a in ?? () #7274 0x0000000100162923 in rb_vm_run (fname=<value temporarily unavailable, due to optimizations>, node=0x2002c9760, binding=<value temporarily unavailable, due to optimizations>, inside_eval=false) at vm.cpp:3915 #7275 0x0000000100049761 in rb_load (fname=<value temporarily unavailable, due to optimizations>, wrap=<value temporarily unavailable, due to optimizations>) at load.c:103 #7276 0x00000001000497db in load_try (path=<value temporarily unavailable, due to optimizations>) at load.c:259 #7277 0x000000010015c35a in rb_rescue2 (b_proc=<value temporarily unavailable, due to optimizations>, data1=<value temporarily unavailable, due to optimizations>, r_proc=0x1000496b0 <load_rescue>, data2=8592983072) at vm.cpp:3477 #7278 0x0000000100049f6f in rb_require_safe (fname=<value temporarily unavailable, due to optimizations>, safe=<value temporarily unavailable, due to optimizations>) at load.c:305 #7279 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x10480c520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbfb668) at dispatcher.cpp:161 #7280 0x00000001013fd094 in dyld_stub_strncpy () #7281 0x00000001013fd53d in MREP_DAC7B080100B46A6A870BEC813155D0E () #7282 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x100f3b520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbfc3e0) at dispatcher.cpp:161 #7283 0x000000010160086c in ?? () #7284 0x000000010161d022 in ?? () #7285 0x0000000100162923 in rb_vm_run (fname=<value temporarily unavailable, due to optimizations>, node=0x2002e9ae0, binding=<value temporarily unavailable, due to optimizations>, inside_eval=false) at vm.cpp:3915 #7286 0x0000000100049761 in rb_load (fname=<value temporarily unavailable, due to optimizations>, wrap=<value temporarily unavailable, due to optimizations>) at load.c:103 #7287 0x00000001000497db in load_try (path=<value temporarily unavailable, due to optimizations>) at load.c:259 #7288 0x000000010015c35a in rb_rescue2 (b_proc=<value temporarily unavailable, due to optimizations>, data1=<value temporarily unavailable, due to optimizations>, r_proc=0x1000496b0 <load_rescue>, data2=8592667744) at vm.cpp:3477 #7289 0x0000000100049f6f in rb_require_safe (fname=<value temporarily unavailable, due to optimizations>, safe=<value temporarily unavailable, due to optimizations>) at load.c:305 #7290 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x10480c520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbfd788) at dispatcher.cpp:161 #7291 0x00000001013fd094 in dyld_stub_strncpy () #7292 0x00000001013fd53d in MREP_DAC7B080100B46A6A870BEC813155D0E () #7293 0x000000010014b9ab in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea7b20, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x100f3b520, block=0x0, opt=2 '\002', argc=<value temporarily unavailable, due to optimizations>, argv=0x7fff5fbfe500) at dispatcher.cpp:161 #7294 0x000000010160086c in ?? () #7295 0x000000010161cf3d in ?? () #7296 0x0000000100162923 in rb_vm_run (fname=<value temporarily unavailable, due to optimizations>, node=0x2000fc120, binding=<value temporarily unavailable, due to optimizations>, inside_eval=false) at vm.cpp:3915 #7297 0x0000000100049761 in rb_load (fname=<value temporarily unavailable, due to optimizations>, wrap=<value temporarily unavailable, due to optimizations>) at load.c:103 #7298 0x000000010004982a in rb_f_load (rcv=<value temporarily unavailable, due to optimizations>, sel=<value temporarily unavailable, due to optimizations>, argc=<value temporarily unavailable, due to optimizations>, argv=<value temporarily unavailable, due to optimizations>) at load.c:128 #7299 0x000000010014b375 in rb_vm_dispatch (_vm=0x100f1e450, cache=0x100ea0ed8, top=8590062304, self=8590062304, klass=0x20001eae0, sel=0x7fff8274fbd1, block=0x0, opt=2 '\002', argc=1, argv=0x7fff5fbff330) at dispatcher.cpp:448 #7300 0x000000010160086c in ?? () #7301 0x0000000101600337 in ?? () #7302 0x0000000100162923 in rb_vm_run (fname=<value temporarily unavailable, due to optimizations>, node=0x2000372c0, binding=<value temporarily unavailable, due to optimizations>, inside_eval=false) at vm.cpp:3915 #7303 0x00000001000411f0 in ruby_run_node (n=0x2000372c0) at eval.c:211 #7304 0x0000000100000d28 in main () }}} -- Ticket URL: <http://www.macruby.org/trac/ticket/972#comment:2> MacRuby <http://macruby.org/>
#972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1 ------------------------------+--------------------------------------------- Reporter: jon@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: ------------------------------+--------------------------------------------- Comment(by eloy.de.enige@…): Building MacRuby with ROXOR_VM_DEBUG=1 gives a lot more info. The endless loop seems to be [NSObject const_missing:]. But I'm too tired atm to hunt this one down right now… -- Ticket URL: <http://www.macruby.org/trac/ticket/972#comment:3> MacRuby <http://macruby.org/>
#972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1 ------------------------------+--------------------------------------------- Reporter: jon@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: MacRuby 1.0 Component: MacRuby | Keywords: ------------------------------+--------------------------------------------- Changes (by lsansonetti@…): * milestone: => MacRuby 1.0 Comment: This should probably be fixed in 1.0. -- Ticket URL: <http://www.macruby.org/trac/ticket/972#comment:4> MacRuby <http://macruby.org/>
#972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1 ------------------------------+--------------------------------------------- Reporter: jon@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: MacRuby 1.0 Component: MacRuby | Keywords: ------------------------------+--------------------------------------------- Comment(by mrada@…): It looks like this issue is gone if you install the latest rake (from git, not rubygems). -- Ticket URL: <http://www.macruby.org/trac/ticket/972#comment:7> MacRuby <http://macruby.org/>
#972: RSpec 2.0.1 & Bundler rake task segfaults under MacRuby 0.7.1 ------------------------------+--------------------------------------------- Reporter: jon@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: MacRuby 1.0 Component: MacRuby | Keywords: ------------------------------+--------------------------------------------- Comment(by scott@…): I'm encountering this problem while using the following: MacRuby nightly 2011-07-12 bundler - 1.1.pre.5 rake - from https://github.com/jimweirich/rake.git @ commit 6e3c542a2a38caeda625 -- Ticket URL: <http://www.macruby.org/trac/ticket/972#comment:8> MacRuby <http://macruby.org/>
participants (1)
-
MacRuby