[MacRuby] #1361: Using pg gem returns bus error
#1361: Using pg gem returns bus error -------------------------------+-------------------------------------------- Reporter: tpitale@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: pg gem postgres -------------------------------+-------------------------------------------- Install macruby from git master. Install pg gem 0.11. macirb require 'rubygems' require 'pg' connection = PGconn.open(:dbname => 'somedb') connection.exec("LISTEN test1") # or any sql Bus error -- Ticket URL: <http://www.macruby.org/trac/ticket/1361> MacRuby <http://macruby.org/>
#1361: Using pg gem returns bus error -------------------------------+-------------------------------------------- Reporter: tpitale@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: pg gem postgres -------------------------------+-------------------------------------------- Comment(by tpitale@…): https://gist.github.com/ba72b246154b87c7e642 -- Ticket URL: <http://www.macruby.org/trac/ticket/1361#comment:1> MacRuby <http://macruby.org/>
#1361: Using pg gem returns bus error -------------------------------+-------------------------------------------- Reporter: tpitale@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: pg gem postgres -------------------------------+-------------------------------------------- Comment(by watson1978@…): hmm, I can't reproduce in my environment. {{{ $ psql --version psql (PostgreSQL) 9.0.4 contains support for command-line editing $ cat test_pg.rb require 'rubygems' require 'pg' connection = PGconn.open(:dbname => 'test') puts connection.exec("LISTEN test1").result_status $ macruby test_pg.rb 1 }}} please attach a crash log. -- Ticket URL: <http://www.macruby.org/trac/ticket/1361#comment:2> MacRuby <http://macruby.org/>
#1361: Using pg gem returns bus error -------------------------------+-------------------------------------------- Reporter: tpitale@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: pg gem postgres -------------------------------+-------------------------------------------- Comment(by tpitale@…): I'm rebuilding MacRuby from master now, this may be my own problem. -- Ticket URL: <http://www.macruby.org/trac/ticket/1361#comment:3> MacRuby <http://macruby.org/>
#1361: Using pg gem returns bus error -------------------------------+-------------------------------------------- Reporter: tpitale@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: pg gem postgres -------------------------------+-------------------------------------------- Comment(by tpitale@…): It seems to be a macirb thing. It's succeeding now the first time I run exec, but eventually it returns a Bus error or a segmentation fault. -- Ticket URL: <http://www.macruby.org/trac/ticket/1361#comment:4> MacRuby <http://macruby.org/>
#1361: Using pg gem returns bus error -------------------------------+-------------------------------------------- Reporter: tpitale@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: pg gem postgres -------------------------------+-------------------------------------------- Comment(by watson1978@…): I also got a crash within macirb. {{{ $ DYLD_LIBRARY_PATH=. gdb --args ./macruby /usr/local/bin/macirb irb(main):007:0> puts connection.exec("LISTEN test1").result_status Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0xfffffffdffd29f47 0x00000001000995bd in st_lookup (table=0x2002c5fa0, key=6, value=0x7fff5fbf5478) at st.c:298 298 hash_val = do_hash(key, table); (gdb) bt #0 0x00000001000995bd in st_lookup (table=0x2002c5fa0, key=6, value=0x7fff5fbf5478) at st.c:298 #1 0x00000001075ae1d5 in pgconn_get_client_encoding_as_rb_encoding (conn=<value temporarily unavailable, due to optimizations>) at pg.c:3778 #2 0x00000001075b4ccf in new_pgresult [inlined] () at /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/Gems/1.9.2/gems/pg-0.11.0/ext/pg.c:117 #3 0x00000001075b4ccf in pgconn_exec (argc=1, argv=<value temporarily unavailable, due to optimizations>, self=8592953824) at pg.c:1005 #4 0x0000000101761ee7 in ?? () #5 0x000000010012defb in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:448 #6 0x000000010012defb in rb_vm_dispatch () at dispatcher.cpp:872 #7 0x0000000101702034 in ?? () #8 0x000000010176624e in ?? () #9 0x0000000100149cea in rb_vm_run (fname=0x2002aace0 "(irb)", node=0x2002dcaa0, binding=0x2000ffe80, inside_eval=true) at vm.cpp:4123 #10 0x000000010014a0ed in rb_vm_run_under () at vm.cpp:4230 #11 0x000000010014a2ff in rb_vm_eval_string (self=8590086944, klass=0, src=8592416064, binding=0x2000ffe80, file=0x2002aace0 "(irb)", line=7, should_push_outer=false) at vm.cpp:4274 #12 0x00000001000db459 in eval_string_with_should_push_outer (self=8590086944, klass=0, src=8592416064, scope=8592079744, file=0x2002aace0 "(irb)", line=7, should_push_outer=false) at vm_eval.c:299 #13 0x00000001000db528 in eval_string (self=8590086944, klass=0, src=8592416064, scope=8592079744, file=0x2002aace0 "(irb)", line=7) at vm_eval.c:320 #14 0x00000001000db8f2 in rb_f_eval (self=8590086944, sel=0x100f27180, argc=4, argv=0x7fff5fbf7938) at vm_eval.c:441 #15 0x000000010012defb in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:448 #16 0x000000010012defb in rb_vm_dispatch () at dispatcher.cpp:872 #17 0x00000001012a16f5 in dyld_stub_strncpy () #18 0x00000001012a2adf in MREP_519E9DD5E8BC4C729284F20BE045241F () #19 0x000000010012e5c4 in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:165 #20 0x000000010012e5c4 in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:466 #21 0x000000010012e5c4 in rb_vm_dispatch () at dispatcher.cpp:872 #22 0x00000001012a16f5 in dyld_stub_strncpy () #23 0x00000001012a329f in MREP_519E9DD5E8BC4C729284F20BE045241F () #24 0x000000010012e52e in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:161 #25 0x000000010012e52e in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:466 #26 0x000000010012e52e in rb_vm_dispatch () at dispatcher.cpp:872 #27 0x00000001012a16f5 in dyld_stub_strncpy () #28 0x00000001012a3ba7 in MREP_519E9DD5E8BC4C729284F20BE045241F () #29 0x000000010012e52e in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:161 #30 0x000000010012e52e in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:466 #31 0x000000010012e52e in rb_vm_dispatch () at dispatcher.cpp:872 #32 0x00000001035de385 in dyld_stub_strncpy () #33 0x00000001035dfa22 in MREP_88F39853BC014BDD9242BFD103DB6765 () #34 0x000000010012e52e in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:161 #35 0x000000010012e52e in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:466 #36 0x000000010012e52e in rb_vm_dispatch () at dispatcher.cpp:872 #37 0x00000001035de385 in dyld_stub_strncpy () #38 0x00000001035dfdde in MREP_88F39853BC014BDD9242BFD103DB6765 () #39 0x000000010012e52e in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:161 #40 0x000000010012e52e in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:466 #41 0x000000010012e52e in rb_vm_dispatch () at dispatcher.cpp:872 #42 0x00000001035de385 in dyld_stub_strncpy () #43 0x00000001035e0095 in MREP_88F39853BC014BDD9242BFD103DB6765 () #44 0x000000010012e56f in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:163 #45 0x000000010012e56f in ruby_dispatch [inlined] () at /Users/watson/src /macruby-master/dispatcher.cpp:466 #46 0x000000010012e56f in rb_vm_dispatch () at dispatcher.cpp:872 #47 0x0000000101702034 in ?? () #48 0x0000000101700ded in ?? () #49 0x0000000101700321 in ?? () #50 0x000000010170017a in ?? () #51 0x0000000100149cea in rb_vm_run (fname=0x2000a7be0 "/usr/local/bin/macirb", node=0x2000b4ec0, binding=0x0, inside_eval=false) at vm.cpp:4123 #52 0x000000010002858b in ruby_run_node (n=0x2000b4ec0) at eval.c:211 #53 0x0000000100000be3 in main (argc=2, argv=0x100f1c030, envp=0x7fff5fbfde50) at main.cpp:40 Current language: auto; currently c (gdb) }}} -- Ticket URL: <http://www.macruby.org/trac/ticket/1361#comment:5> MacRuby <http://macruby.org/>
#1361: Using pg gem returns bus error -------------------------------+-------------------------------------------- Reporter: tpitale@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: pg gem postgres -------------------------------+-------------------------------------------- Comment(by watson1978@…): Maybe, I guess that pg gem needs the write barrier at https://bitbucket.org/ged/ruby-pg/src/3d744d9776c3/ext/pg.c#cl-4089 [[BR]] I guess this issue is same as http://www.macruby.org/trac/ticket/1308#comment:9 -- Ticket URL: <http://www.macruby.org/trac/ticket/1361#comment:6> MacRuby <http://macruby.org/>
participants (1)
-
MacRuby