Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

Java "not enough core"

 
SOLVED
Go to solution
Ben Armstrong
Regular Advisor

Java "not enough core"

I am trying to run MSpec against JRuby 1.6.0 on an rx2600 running V8.3-1H1 with JAVA60 V1.6-2.

Unless I break up this large test suite into smaller runs of individual tests, I invariably end up with a stack trace that looks something like:

OpenVMS stack trace:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#
%SYSTEM-F-ACCVIO
(0xc)
at pc=2E78C20
, pid=564662602
, tid=85815808

#
# JRE version: 6.0
# Java VM: Java HotSpot(TM) 64-Bit Server VM (14.3-b01 mixed mode -ia64 )
# Problematic frame:
#
C
[JAVA$JAVA_SHR+0x1670]

#
# An error report file with more information is saved as:
#
/tmp/hs_err_pid564662602.log

The resulting file, sys$scratch:hs_err_pid564662602.log contains:


#
# A fatal error has been detected by the Java Runtime Environment:
#
# %SYSTEM-F-ACCVIO (0xc) at pc=2E78C20, pid=564662602, tid=83898880
#
# JRE version: 6.0
# Java VM: Java HotSpot(TM) 64-Bit Server VM (14.3-b01 mixed mode -ia64 )
# Problematic frame:
# C [JAVA$JAVA_SHR+0x1670]
#
# Please report this error to HP customer support.
#

--------------- T H R E A D ---------------

Current thread (4EF2000): JavaThread "ScriptThreadProcess: -v" daemon [_thread_in_native, id=83898880, stack(4EFE000,5002000)]

siginfo:si_signo=(null): si_errno=not enough core, si_code=0

Top of Stack: (sp=0)
0:

I'm at a loss as to how to debug this. jmspec is defined as follows:

$ show sym jmspec
JMSPEC == "$ SYS$COMMON:[JAVA$60.bin]java$java "-Djruby.home=/dym$sys_a/dymax/jruby" "-Djruby.lib=/dym$sys_a/dymax/jruby/lib" "-Djruby.script=jruby" "-Djruby.memory.max=500m" "-Djruby.stack.max=1024k" "-Xmx500m" "-Xss1024k" "-Xbootclasspath/a:/dym$sys_a/dymax/jruby/lib/bsf.jar:/dym$sys_a/dymax/jruby/lib/jruby.jar" /dsa0/bg/mspec/bin/mspec"

I have tried altering:

the stack max, both for jruby and java, doubled, from 1024 -> 2048

the heap max, both for jruby and java, doubled, from 500m -> 1000m

my PGFLQUO, doubled, from 600000 to 1200000

my WSEXTENT, doubled, from 6000 to 12000

Nothing I do here seems to help. Can someone please give me some guidance?

Thanks,
Ben
21 REPLIES 21
Hoff
Honored Contributor
Solution

Re: Java "not enough core"

Given that what you've already tried are all of the usual suspects for Java (with the possible exception of increasing the system parameter WSMAX to allow for the increased working sets requested, if that's needed), ring up HP Support, as the diagnostic states.

Though depending on how big JRuby is here, you may need further increases.
Ben Armstrong
Regular Advisor

Re: Java "not enough core"

My WSMAX is 95616 pages, which appears to be enough. Thanks. Well, HP support it is, then. Just wanted to see if I overlooked something obvious.

Incidentally, the same test suite works fine with JAVA150 V1.5-6_P1 on a DS10/617 running VMS V8.3. How strange. Either some JAVA6-specific thing or an Itanium-specific thing.

Ben
P Muralidhar Kini
Honored Contributor

Re: Java "not enough core"

Hi Ben,

>> Thanks. Well, HP support it is, then
Connect to HP via the Office of OpenVMS programs interface.
You can send mail to OpenVMS.Programs@hp.com.

>> Incidentally, the same test suite works fine with JAVA150 V1.5-6_P1
>> on a DS10/617 running VMS V8.3. How strange.
>> Either some JAVA6-specific thing or an Itanium-specific thing.
I hope you have compared the parameters (PGFLQUO and others) settings
on system that worked with that on the system that does not work.

Regards,
Murali
Let There Be Rock - AC/DC
Ben Armstrong
Regular Advisor

Re: Java "not enough core"

It's a mixed architecture cluster with shared UAF, so the account quotas are the same between the Alpha and Itanium test systems at least.

Ben
Highlighted
Jan van den Ende
Honored Contributor

Re: Java "not enough core"

Ben,

>>>
so the account quotas are the same between the Alpha and Itanium test systems at least.
<<<

Are those quota the old Alpha quota, or updated to I64 level? Doubling is fairly minimalish, quadrupling is just about "equivalent"....
And the larger quota are not hurting (at least that I know not of) on Alpha.
hth

Proost.

Have one on me.

jpe
Don't rust yours pelled jacker to fine doll missed aches.
Ben Armstrong
Regular Advisor

Re: Java "not enough core"

Quadrupled, as suggested, and no difference (even when I also quadruple the jruby & java maximums specified in the command as well). Indeed, the place where it dies is precisely where it was before.

...
/DSA0/BG/RUBYSPEC/core/file/chown_spec.rb
OpenVMS stack trace:
...

Curiously, chown_spec.rb contains only tests in an "as_superuser" clause which, when run (with or without elevated privileges) does nothing on this platform. The test case does not die when run in isolation.

Ben
P Muralidhar Kini
Honored Contributor

Re: Java "not enough core"

Hi Ben,

>> The test case does not die when run in isolation.
This is interesting.

When you run the entire test suite, is this the only test that fails ?
i.e.
if you say do not run only this particular test in the entire test suite then does the entire test suite pass successfully or some other test down the line fails ?

Regards,
Murali
Let There Be Rock - AC/DC
Ian Miller.
Honored Contributor

Re: Java "not enough core"

You may find some useful information at

http://vouters.dyndns.org/tima/
____________________
Purely Personal Opinion
Ben Armstrong
Regular Advisor

Re: Java "not enough core"

Yes, thanks. We are aware of the work by Phillipe Vouters and Thierry Uso on JRuby for OpenVMS and hope they succeed. We have kept on-hand the prebuilt image they have produced of 1.5.3 and have also been testing against that version from time to time.

While I can't be certain yet that this is the same problem as is occurring in mspec, we have made a simple test program that fails with the same stack dump as indicated above. This fails on the 1.5.3 kit as well:

$ jruby -e "20000.times{|i| puts i; `DIR`}"

I am going to file some additional information on the bug we filed on JRuby some time ago here as soon as I'm certain we have a test that is reproducible by anyone. In particular, I would like to know what account quotas may have a bearing on this issue, as late yesterday afternoon, after testing on one developer's account, we found that the test program did not fail on my own (with increased quotas). However, the same test does fail, even with the increased quotas, using the 1.5.3 kit.

For reference purposes, here is that bug:

http://jira.codehaus.org/browse/JRUBY-3902

Ben