[#70257] [Ruby trunk - Feature #11420] [Open] Introduce ID key table into MRI — ko1@...

Issue #11420 has been reported by Koichi Sasada.

11 messages 2015/08/06

[ruby-core:70567] [Ruby trunk - Bug #11481] [Open] Segmentation fault when thread is killed during `require`.

From: thomas.weissschuh@...
Date: 2015-08-24 12:51:10 UTC
List: ruby-core #70567
Issue #11481 has been reported by Thomas Weiテ殱chuh.

----------------------------------------
Bug #11481: Segmentation fault when thread is killed during `require`.
https://bugs.ruby-lang.org/issues/11481

* Author: Thomas Weiテ殱chuh
* Status: Open
* Priority: Normal
* Assignee: 
* ruby -v: ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
One of a library used by us executes `open` from `uri-open` in multiple thread in parallel under a timeout.
`open-uri` implicitly `require`s `net/http`. When the import machinery is killed during performing an import this will lead to a segfault further down the line.

I readily accept that it is very poor practice to do `require` in a loop which is suspect to uncatchable exceptions,
But unfortunately the user has no idea that `require`s are performed.

The test.rb script from the attachements triggers this bug. You may want to spawn less threads. The high number was chosen to improve the rate of triggering the bug.

We tested this on ruby 2.1.5p273 as shipped with debian Jessie. And ruby 2.2.3p173 from ArchLinux.

---Files--------------------------------
backtrace (255 KB)
test.rb (231 Bytes)


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

In This Thread

Prev Next