[#59462] [ruby-trunk - Bug #9342][Open] [PATCH] SizedQueue#clear does not notify waiting threads in Ruby 1.9.3 — "jsc (Justin Collins)" <redmine@...>

9 messages 2014/01/02

[#59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly — "normalperson (Eric Wong)" <normalperson@...>

11 messages 2014/01/02

[#59498] [ruby-trunk - Bug #9352][Open] [BUG] rb_sys_fail_str(connect(2) for [fe80::1%lo0]:3000) - errno == 0 — "kain (Claudio Poli)" <claudio@...>

10 messages 2014/01/03

[#59516] [ruby-trunk - Bug #9356][Open] TCPSocket.new does not seem to handle INTR — "charliesome (Charlie Somerville)" <charliesome@...>

48 messages 2014/01/03

[#59538] [ruby-trunk - Feature #9362][Assigned] Minimize cache misshit to gain optimal speed — "shyouhei (Shyouhei Urabe)" <shyouhei@...>

33 messages 2014/01/03
[#59582] Re: [ruby-trunk - Feature #9362][Assigned] Minimize cache misshit to gain optimal speed — SASADA Koichi <ko1@...> 2014/01/06

Intersting challenge.

[#59541] Re: [ruby-trunk - Feature #9362][Assigned] Minimize cache misshit to gain optimal speed — Eric Wong <normalperson@...> 2014/01/04

Hi, I noticed a trivial typo in array.c, and it fails building struct.c

[#59583] [ruby-trunk - Bug #9367][Open] REXML::XmlDecl doesn't use user specified quotes — "bearmini (Takashi Oguma)" <bear.mini@...>

12 messages 2014/01/06

[#59642] [ruby-trunk - Bug #9384][Open] Segfault in ruby 2.1.0p0 — "cbliard (Christophe Bliard)" <christophe.bliard@...>

11 messages 2014/01/08

[#59791] About unmarshallable DRb objects life-time — Rodrigo Rosenfeld Rosas <rr.rosas@...>

A while ago I created a proof-of-concept that I intended to use in my

16 messages 2014/01/15
[#59794] Re: About unmarshallable DRb objects life-time — Eric Hodel <drbrain@...7.net> 2014/01/15

On 15 Jan 2014, at 11:58, Rodrigo Rosenfeld Rosas <rr.rosas@gmail.com> wrote:

[#59808] Re: About unmarshallable DRb objects life-time — Rodrigo Rosenfeld Rosas <rr.rosas@...> 2014/01/16

Em 15-01-2014 19:42, Eric Hodel escreveu:

[#59810] Re: About unmarshallable DRb objects life-time — Eric Hodel <drbrain@...7.net> 2014/01/16

On 16 Jan 2014, at 02:15, Rodrigo Rosenfeld Rosas <rr.rosas@gmail.com> wrote:

[#59826] Re: About unmarshallable DRb objects life-time — Rodrigo Rosenfeld Rosas <rr.rosas@...> 2014/01/17

Em 16-01-2014 19:43, Eric Hodel escreveu:

[#59832] Re: About unmarshallable DRb objects life-time — Eric Hodel <drbrain@...7.net> 2014/01/17

On 17 Jan 2014, at 04:22, Rodrigo Rosenfeld Rosas <rr.rosas@gmail.com> wrote:

[ruby-core:59589] [ruby-trunk - Bug #9315] Segfault when calling super in rspec mocks with and_call_original [linux]

From: "jgraichen (Jan Graichen)" <jgraichen@...>
Date: 2014-01-06 11:04:50 UTC
List: ruby-core #59589
Issue #9315 has been updated by jgraichen (Jan Graichen).


=begin
I've finally had time to test my test suite on current ruby heads and encountered some other similar problems again.

Given the following example:

  module Persistence
    def save!
      # save to disk etc.
      puts "saved!"
    end
  end

  module Validation
    def valid?(context)
      true
    end

    # Hook save!
    def save!(*args)
      return false unless valid? :create
      super
    end
  end

  class Model
    include Persistence
    include Validation
  end

  Model.new.method(:save!).call

On (({ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-linux]})):

  > ruby test.rb
  saved!

On (({ruby 2.0.0p377 (2014-01-03 revision 44491) [x86_64-linux]})):

  > ruby test.rb
  test.rb:16:in `save!': super: no superclass method `save!' for #<Model:0x00000000dccc88> (NoMethodError)
        from test.rb:25:in `call'
        from test.rb:25:in `<main>'

And on (({ruby 2.1.1p2 (2013-12-31 revision 44467) [x86_64-linux]})):

  > ruby test.rb
  test.rb:16: [BUG] Segmentation fault at 0x00000000000018
  ruby 2.1.1p2 (2013-12-31 revision 44467) [x86_64-linux]

  -- Control frame information -----------------------------------------------
  c:0004 p:0026 s:0012 e:000010 METHOD test.rb:16 [FINISH]
  c:0003 p:---- s:0007 e:000006 CFUNC  :call
  c:0002 p:0047 s:0004 E:001ca8 EVAL   test.rb:25 [FINISH]
  c:0001 p:0000 s:0002 E:001978 TOP    [FINISH]

  -- Ruby level backtrace information ----------------------------------------
  test.rb:25:in `<main>'
  test.rb:25:in `call'
  test.rb:16:in `save!'

  -- C level backtrace information -------------------------------------------
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1e18ec) [0x7f40e25dd8ec] vm_dump.c:685
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x76d43) [0x7f40e2472d43] error.c:307
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(rb_bug+0xb3) [0x7f40e2473993] error.c:334
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1595ce) [0x7f40e25555ce] signal.c:704
  /lib/x86_64-linux-gnu/libpthread.so.0(+0xf210) [0x7f40e21ef210]
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1cba03) [0x7f40e25c7a03] vm_method.c:573
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1cfe79) [0x7f40e25cbe79] vm_insnhelper.c:2029
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1d393c) [0x7f40e25cf93c] vm.c:1304
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1d47f4) [0x7f40e25d07f4] vm_eval.c:171
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1d5477) [0x7f40e25d1477] vm_eval.c:50
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(rb_method_call_with_block+0x10a) [0x7f40e248456a] proc.c:1833
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1d7e41) [0x7f40e25d3e41] vm_insnhelper.c:1470
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1cfd54) [0x7f40e25cbd54] insns.def:1028
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x1d393c) [0x7f40e25cf93c] vm.c:1304
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(rb_iseq_eval_main+0x1f6) [0x7f40e25d8986] vm.c:1562
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(+0x7ceea) [0x7f40e2478eea] eval.c:253
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(ruby_exec_node+0x1d) [0x7f40e247ae7d] eval.c:318
  /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1(ruby_run_node+0x1c) [0x7f40e247d2bc] eval.c:310
  ruby() [0x40088b]
  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7f40e171c995]
  ruby() [0x4008b9]

  -- Other runtime information -----------------------------------------------

  * Loaded script: test.rb

  * Loaded features:

      0 enumerator.so
      1 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/encdb.so
      2 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/trans/transdb.so
      3 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/rbconfig.rb
      4 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/compatibility.rb
      5 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/defaults.rb
      6 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/deprecate.rb
      7 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/errors.rb
      8 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/version.rb
      9 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/requirement.rb
     10 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/platform.rb
     11 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/basic_specification.rb
     12 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/stub_specification.rb
     13 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/util/stringio.rb
     14 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/specification.rb
     15 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/exceptions.rb
     16 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_gem.rb
     17 thread.rb
     18 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/thread.so
     19 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/monitor.rb
     20 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb
     21 /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/site_ruby/2.1.0/rubygems.rb

  * Process memory map:

  00400000-00401000 r-xp 00000000 fe:03 17045008                           /home/jan/.rvm/rubies/ruby-2.1.0-head/bin/ruby
  00600000-00601000 rw-p 00000000 fe:03 17045008                           /home/jan/.rvm/rubies/ruby-2.1.0-head/bin/ruby
  019d1000-01e6a000 rw-p 00000000 00:00 0                                  [heap]
  7f40e0be4000-7f40e0bf9000 r-xp 00000000 fe:02 1966585                    /lib/x86_64-linux-gnu/libgcc_s.so.1
  7f40e0bf9000-7f40e0df9000 ---p 00015000 fe:02 1966585                    /lib/x86_64-linux-gnu/libgcc_s.so.1
  7f40e0df9000-7f40e0dfa000 rw-p 00015000 fe:02 1966585                    /lib/x86_64-linux-gnu/libgcc_s.so.1
  7f40e0dfa000-7f40e0dfd000 r-xp 00000000 fe:03 17045821                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/thread.so
  7f40e0dfd000-7f40e0ffc000 ---p 00003000 fe:03 17045821                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/thread.so
  7f40e0ffc000-7f40e0ffd000 rw-p 00002000 fe:03 17045821                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/thread.so
  7f40e0ffd000-7f40e0fff000 r-xp 00000000 fe:03 17045808                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/trans/transdb.so
  7f40e0fff000-7f40e11ff000 ---p 00002000 fe:03 17045808                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/trans/transdb.so
  7f40e11ff000-7f40e1200000 rw-p 00002000 fe:03 17045808                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/trans/transdb.so
  7f40e1200000-7f40e1202000 r-xp 00000000 fe:03 17045760                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/encdb.so
  7f40e1202000-7f40e1401000 ---p 00002000 fe:03 17045760                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/encdb.so
  7f40e1401000-7f40e1402000 rw-p 00001000 fe:03 17045760                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/ruby/2.1.0/x86_64-linux/enc/encdb.so
  7f40e1402000-7f40e16fb000 r--p 00000000 fe:02 551553                     /usr/lib/locale/locale-archive
  7f40e16fb000-7f40e189e000 r-xp 00000000 fe:02 1966939                    /lib/x86_64-linux-gnu/libc-2.17.so
  7f40e189e000-7f40e1a9d000 ---p 001a3000 fe:02 1966939                    /lib/x86_64-linux-gnu/libc-2.17.so
  7f40e1a9d000-7f40e1aa1000 r--p 001a2000 fe:02 1966939                    /lib/x86_64-linux-gnu/libc-2.17.so
  7f40e1aa1000-7f40e1aa3000 rw-p 001a6000 fe:02 1966939                    /lib/x86_64-linux-gnu/libc-2.17.so
  7f40e1aa3000-7f40e1aa7000 rw-p 00000000 00:00 0 
  7f40e1aa7000-7f40e1ba3000 r-xp 00000000 fe:02 1966949                    /lib/x86_64-linux-gnu/libm-2.17.so
  7f40e1ba3000-7f40e1da3000 ---p 000fc000 fe:02 1966949                    /lib/x86_64-linux-gnu/libm-2.17.so
  7f40e1da3000-7f40e1da4000 r--p 000fc000 fe:02 1966949                    /lib/x86_64-linux-gnu/libm-2.17.so
  7f40e1da4000-7f40e1da5000 rw-p 000fd000 fe:02 1966949                    /lib/x86_64-linux-gnu/libm-2.17.so
  7f40e1da5000-7f40e1dad000 r-xp 00000000 fe:02 1966946                    /lib/x86_64-linux-gnu/libcrypt-2.17.so
  7f40e1dad000-7f40e1fac000 ---p 00008000 fe:02 1966946                    /lib/x86_64-linux-gnu/libcrypt-2.17.so
  7f40e1fac000-7f40e1fad000 r--p 00007000 fe:02 1966946                    /lib/x86_64-linux-gnu/libcrypt-2.17.so
  7f40e1fad000-7f40e1fae000 rw-p 00008000 fe:02 1966946                    /lib/x86_64-linux-gnu/libcrypt-2.17.so
  7f40e1fae000-7f40e1fdc000 rw-p 00000000 00:00 0 
  7f40e1fdc000-7f40e1fdf000 r-xp 00000000 fe:02 1966937                    /lib/x86_64-linux-gnu/libdl-2.17.so
  7f40e1fdf000-7f40e21de000 ---p 00003000 fe:02 1966937                    /lib/x86_64-linux-gnu/libdl-2.17.so
  7f40e21de000-7f40e21df000 r--p 00002000 fe:02 1966937                    /lib/x86_64-linux-gnu/libdl-2.17.so
  7f40e21df000-7f40e21e0000 rw-p 00003000 fe:02 1966937                    /lib/x86_64-linux-gnu/libdl-2.17.so
  7f40e21e0000-7f40e21f7000 r-xp 00000000 fe:02 1966931                    /lib/x86_64-linux-gnu/libpthread-2.17.so
  7f40e21f7000-7f40e23f6000 ---p 00017000 fe:02 1966931                    /lib/x86_64-linux-gnu/libpthread-2.17.so
  7f40e23f6000-7f40e23f7000 r--p 00016000 fe:02 1966931                    /lib/x86_64-linux-gnu/libpthread-2.17.so
  7f40e23f7000-7f40e23f8000 rw-p 00017000 fe:02 1966931                    /lib/x86_64-linux-gnu/libpthread-2.17.so
  7f40e23f8000-7f40e23fc000 rw-p 00000000 00:00 0 
  7f40e23fc000-7f40e26a7000 r-xp 00000000 fe:03 17045009                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1.0
  7f40e26a7000-7f40e28a7000 ---p 002ab000 fe:03 17045009                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1.0
  7f40e28a7000-7f40e28af000 rw-p 002ab000 fe:03 17045009                   /home/jan/.rvm/rubies/ruby-2.1.0-head/lib/libruby.so.2.1.0
  7f40e28af000-7f40e28d5000 rw-p 00000000 00:00 0 
  7f40e28d5000-7f40e28f6000 r-xp 00000000 fe:02 1966711                    /lib/x86_64-linux-gnu/ld-2.17.so
  7f40e29c2000-7f40e2ac8000 rw-p 00000000 00:00 0 
  7f40e2aef000-7f40e2af0000 rw-p 00000000 00:00 0 
  7f40e2af0000-7f40e2af1000 ---p 00000000 00:00 0 
  7f40e2af1000-7f40e2af6000 rw-p 00000000 00:00 0                          [stack:26115]
  7f40e2af6000-7f40e2af7000 r--p 00021000 fe:02 1966711                    /lib/x86_64-linux-gnu/ld-2.17.so
  7f40e2af7000-7f40e2af9000 rw-p 00022000 fe:02 1966711                    /lib/x86_64-linux-gnu/ld-2.17.so
  7fffd4700000-7fffd4721000 rw-p 00000000 00:00 0 
  7fffd47fe000-7fffd4800000 r-xp 00000000 00:00 0                          [vdso]
  ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]


  [NOTE]
  You may have encountered a bug in the Ruby interpreter or extension libraries.
  Bug reports are welcome.
  For details: http://www.ruby-lang.org/bugreport.html

  Aborted

=end
----------------------------------------
Bug #9315: Segfault when calling super in rspec mocks with and_call_original [linux]
https://bugs.ruby-lang.org/issues/9315#change-44120

Author: jgraichen (Jan Graichen)
Status: Closed
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: 
Target version: 
ruby -v: ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN


I've tried running my test suite [1] on Ruby 2.1 resulting in segmentation faults. I've created a smaller rspec test [2] reproducing the segfault. I still haven't found a way to reproduce the segfault without rspec mocks. Run the example via `rspec test.rb`. Same script on Ruby 2.0 works. Used linux is a Debian Sid.

[1] https://travis-ci.org/jgraichen/acfs/jobs/16069122#L87
[2] https://gist.github.com/jgraichen/8159849

I've attached the segfault output.


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

In This Thread