Forum: JRuby JRE 7 / JRuby 1.7.13 - fatal error precompiling assets for Rails 3.2.x application

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
TJG (Guest)
on 2014-07-09 04:52
(Received via mailing list)

Ubuntu 12.04 LTS
JRuby 1.7.13
JRE 7.0_60-b19
Rails 3.2.12 application

Hi all;

Does anyone recognize this problem or can anyone suggest what I might
to figure out what's gone wrong?

$ *jruby -S rake assets:precompile:all RAILS_ENV=staging

Starts off okay...

Compiled jquery-plugins/jquery.blockUI.js  (2ms)  (pid 29552)
Compiled jquery-plugins/jquery.cookie.js  (2ms)  (pid 29552)
Compiled jquery-plugins/jquery.form.js  (13ms)  (pid 29552)
Compiled jquery-plugins/jquery.safeEnter.js  (0ms)  (pid 29552)
Compiled ckeditor/basepath.js  (16ms)  (pid 29552)
Compiled ckeditor/ckeditor.js  (7ms)  (pid 29552)
Compiled ckeditor/jquery.js  (0ms)  (pid 29552)
Compiled ckeditor-jquery.js  (118ms)  (pid 29552)
Compiled application.js  (1346ms)  (pid 29552)
Compiled admin.js  (1389ms)  (pid 29552)

Then... boom:

# A fatal error has been detected by the Java Runtime Environment:
#  SIGSEGV (0xb) at pc=0x00007f32b205cff1, pid=29552,
# JRE version: Java(TM) SE Runtime Environment (7.0_60-b19) (build
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.60-b09 mixed mode
linux-amd64 compressed oops)
# Problematic frame:
# V  []  oopDesc::size_given_klass(Klass*)+0x1
# Failed to write core dump. Core dumps have been disabled. To enable
dumping, try "ulimit -c unlimited" before starting Java again

[ From error dump ]:
VM Arguments:
jvm_args: -Xmx500m -Xss2048k
java_command: org.jruby.Main -S rake assets:precompile:all
Launcher Type: SUN_STANDARD

Environment Variables:

Many thanks,
TJG (Guest)
on 2014-07-13 17:52
(Received via mailing list)
Resolved this by installing *node.js* on the server, and dropping
*therubyrhino* gem.

Asset precompilation worked nicely, with no JVM segmentation faults.

And, on y development machine, asset precompilation dropped from 2
to 7 *minutes*.

Christian MICHON (Guest)
on 2014-07-13 19:26
(Received via mailing list)
Moving from jruby to nodejs? Therubyrhino gem?

Could you please then explain your architecture? It's extremely unclear
from your 2 emails.

On 1st email I can see you allocated only 500Mb to your jruby job. I
advise for 1.5Gb if you're stuck on 32 bits, 2Gb and above if you're on
TJG (Guest)
on 2014-07-13 19:34
(Received via mailing list)
Salut Christian;

Thanks for your observation about the memory allocation. Perhaps that
the original problem.

No, I didn't move my project from JRuby to nodejs. I just removed
therubyrhino javascript interpreter and now let the precompilation of
assets depend on node.js instead

I do not understand the mechanics of it all, yet, but this change was
certainly a life-saver.

With no other changes (i.e. no increased memory or anything like that),
assets now precompile without failure by the JVM.


On Sun, Jul 13, 2014 at 1:25 PM, Christian MICHON <
Chris Seaton (Guest)
on 2014-07-13 19:38
(Received via mailing list)
Rhino is not a fast implementation of JS - whether or not its integrated
into JRuby via therubyrhino. Is anyone working on a therubynashorn yet?

Christian MICHON (Guest)
on 2014-07-13 19:42
(Received via mailing list)
An excellent idea. Careful though: JDK8 is mandatory for Nashorn.

And I understood just now why therubyrhino: rails complex stack for
compilation. Why not sprockets instead?
Alex Tambellini (Guest)
on 2014-07-13 19:45
(Received via mailing list)
Something that sped up our asset compilation process a ton was switching
from uglifier.js to the google closure compiler:

By adding this gem to your Gemfile:

gem 'closure-compiler

and setting the rails javascript compressor to closure compiler:

config.assets.js_compressor = :closure
TJG (Guest)
on 2014-07-13 21:18
(Received via mailing list)
THanks very much for the suggestion, Alex.

I'll give that a shot and compare compile times.


On Sun, Jul 13, 2014 at 1:45 PM, Alex Tambellini <>
This topic is locked and can not be replied to.