Issue #6825 has been updated by Eregon (Benoit Daloze).

Status changed from Closed to Assigned
Assignee changed from mrkn (Kenta Murata) to Eregon (Benoit Daloze)

This is also true with latest trunk (r37462).

I'm assigning to myself.

bug6825.rb:31: [BUG] pthread_cond_timedwait: Invalid argument (EINVAL)
ruby 2.0.0dev (2012-11-04 trunk 37462) [x86_64-darwin10.8.0]

-- Control frame information -----------------------------------------------
c:0005 p:---- s:0013 e:000012 CFUNC  :sleep
c:0004 p:0007 s:0009 e:000008 BLOCK  bug6825.rb:31 [FINISH]
c:0003 p:---- s:0007 e:000006 CFUNC  :loop
c:0002 p:0005 s:0004 e:000003 BLOCK  bug6825.rb:31 [FINISH]
c:0001 p:---- s:0002 e:000001 TOP    [FINISH]

bug6825.rb:31:in `block (2 levels) in initialize'
bug6825.rb:31:in `loop'
bug6825.rb:31:in `block (3 levels) in initialize'
bug6825.rb:31:in `sleep'

----------------------------------------
Bug #6825: forking and pthread_cond_timedwait: Invalid argument (EINVAL) on OS X / 1.9.3-p194
https://bugs.ruby-lang.org/issues/6825#change-32315

Author: xentronium (Mark A)
Status: Assigned
Priority: Normal
Assignee: Eregon (Benoit Daloze)
Category: 
Target version: 
ruby -v: ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin10.8.0]


https://gist.github.com/47e48301aea114e7b1d3 here is the gist with required setup to reproduce bug. Also crash log and stdout.

It seems that forking is essential for this setup to crash. Also, if you use database connection in some way prior to forking, it might not crash (however, with more complex code it still does).



ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin10.8.0]
OS X 10.6.8

hostinfo output:

    Mach kernel version:
    	 Darwin Kernel Version 10.8.0: Tue Jun  7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386
    Kernel configured for up to 4 processors.
    2 processors are physically available.
    4 processors are logically available.
    Processor type: i486 (Intel 80486)
    Processors active: 0 1 2 3
    Primary memory available: 8.00 gigabytes
    Default processor set: 88 tasks, 627 threads, 4 processors
    Load average: 0.55, Mach factor: 3.43

compiled with gcc version:

    i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)


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