[#85349] [Ruby trunk Bug#14334] Segmentation fault after running rspec (ruby/2.5.0/erb.rb:885 / simplecov/source_file.rb:85) — pragtob@...
Issue #14334 has been updated by PragTob (Tobias Pfeiffer).
3 messages
2018/02/02
[#85358] Re: [ruby-cvs:69220] nobu:r62039 (trunk): compile.c: unnecessary freezing — Eric Wong <normalperson@...>
[email protected] wrote:
5 messages
2018/02/03
[#85612] Why require autoconf 2.67+ — leam hall <leamhall@...>
Please pardon the intrusion; I am new to Ruby and like to pull the
6 messages
2018/02/17
[#85616] Re: Why require autoconf 2.67+
— Vít Ondruch <v.ondruch@...>
2018/02/18
VGhpcyBjb3VsZCBoZWxwIHlvdSB0byBidWlsZCBSdWJ5IHdpdGggb2xkZXIgYXV0b2NvbmYgKDIu
[#85634] [Ruby trunk Bug#14494] [PATCH] tool/m4/ruby_replace_type.m4 use AC_CHECK_TYPES for HAVE_* macros — normalperson@...
Issue #14494 has been reported by normalperson (Eric Wong).
3 messages
2018/02/19
[#85674] [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid — matz@...
Issue #13618 has been updated by matz (Yukihiro Matsumoto).
5 messages
2018/02/20
[#85686] Re: [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
— Eric Wong <normalperson@...>
2018/02/20
[email protected] wrote:
[#85704] Re: [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
— Koichi Sasada <ko1@...>
2018/02/21
On 2018/02/20 18:06, Eric Wong wrote:
[ruby-core:85524] [Ruby trunk Bug#14471] DRb mixing up function return values between PIDs after fork()
From:
jrafanie@...
Date:
2018-02-13 17:15:00 UTC
List:
ruby-core #85524
Issue #14471 has been reported by jrafanie (Joe Rafaniello). ---------------------------------------- Bug #14471: DRb mixing up function return values between PIDs after fork() https://bugs.ruby-lang.org/issues/14471 * Author: jrafanie (Joe Rafaniello) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin16] * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- This is likely a duplicate of https://bugs.ruby-lang.org/issues/2718, although the Backport191 project in redmine appears to be dead. We have found the exact same problem with modern rubies such as 2.3, 2.4, 2.5. The summary is that due to fork and sharing of established connections in the `DRbConn` pool, the `DRb` server sometimes sends `DRb` client 1's message to client 2 and client 2's message to client 1. My colleague Adam Grare and I have narrowed it down to the "global" `DRb::DRbConn` class instance variable `@pool` being inherited in child forked processes. Our workaround[1] was to close all existing connections in the inherited pool in each fork to ensure each child fork process would get brand new connections: ```ruby DRb::DRbConn.instance_variable_get(:@mutex).synchronize do DRb::DRbConn.instance_variable_get(:@pool).each(&:close) end ``` The attached client and server and log demonstrates the problem and fails on all modern ruby versions. The source of these can be found in a gist here: [2]. Note, we have tested this on Mac OSX and debian. It would be great if connection pools would not be shared in forked processes or give us a public interface to clear the connection pool. [1] https://github.com/ManageIQ/manageiq/pull/16953 [2] https://gist.github.com/agrare/d9484884bd297b1615814128129cfc5c ---Files-------------------------------- echo_client.rb (2.22 KB) echo_server.rb (134 Bytes) Example_Run.log (615 Bytes) -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:[email protected]?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>