[prev in list] [next in list] [prev in thread] [next in thread]
List: ruby-core
Subject: [ruby-core:86776] [Ruby trunk Bug#14714] Ruby 2.5.1 Segmentation Fault
From: renchap+ruby () gmail ! com
Date: 2018-04-30 15:22:29
Message-ID: redmine.journal-71734.20180430152227.b06ef6b984e39f70 () ruby-lang ! org
[Download RAW message or body]
Issue #14714 has been updated by renchap (Renaud Chaput).
File ruby-bug-14714_2018-04-30-150948.crash added
I think I am seeing a similar bug.
My test suite (Rails system tests, using Minitest and Capybara) is crashing on MacOS \
when using Ruby 2.5.1. It is not happening with MRI 2.4.4, or on Linux (containers on \
Circle CI) using 2.5.1.
I first suspected a bug with `ruby-vips` but as I can not reproduce it with 2.4.4, I \
think this is a bug in MRI (`ruby-vips` issue for reference: \
https://github.com/jcupitt/ruby-vips/issues/174).
`ruby-vips` is used to resize images using `libvips` (via ffi). When I switch to \
another way of resizing (using MiniMagick — which shells out to ImageMagick), the \
segfault does not occur. I think it happens because when using `ruby-vips` the resize \
is handled inside the MRI process and more memory is used.
The crash does not always happen, about 30% of the time the test suite finished. It \
sometimes crashes while resizing an image, but it sometimes also crashes later, in a \
test without any `ruby-vips` calls. The stack trace is always the same, and related \
to GC.
I tried to reproduce the problem by isolating my image resizing code and calling it a \
few thousand times on the same images as my test, without success. Running my app \
full test suite on 2.5.1 on a mac is the only way to reproduce it. I tried to enable \
`GC.stress = true` at the start of the test suite but as the test suite uses a \
full-featured Rails app, launches a headless browser, ..., it is far too slow and I \
can not even get Rails to start.
----------------------------------------
Bug #14714: Ruby 2.5.1 Segmentation Fault
https://bugs.ruby-lang.org/issues/14714#change-71734
* Author: obromios (Chris Drane)
* Status: Open
* Priority: Normal
* Assignee:
* Target version:
* ruby -v:
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
I am using Ruby 2.5.1, and running ruby on rails 5.1.4 with rspec-rails 3.7.2 and \
capybara 3.0.2.
When I run my feature tests, i.e. rspec spec/features, I get a segmentation fault. \
When I found the test in which the fault is occurring, and run that test by itself, \
then the fault does not appear. If I make the offending test pending,and run rspec \
spec/features again, then the fault still occurs but in another test. Accordingly, I \
cannot give you the exact code that is causing the fault.
I have attached the crash report log file.
---Files--------------------------------
ruby_2018-04-26-200005_MiniMe.crash (59.4 KB)
ruby-bug-14714_2018-04-30-150948.crash (115 KB)
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic