Operating System - HP-UX
1827075 Members
1359 Online
109713 Solutions
New Discussion

-d64 does not work on JDK1.5.0.10

 
SOLVED
Go to solution
aycf
Advisor

-d64 does not work on JDK1.5.0.10

After upgrading to JAVA1.5.0.4 to 1.5.0.10 on HPUX11.11 PA-RISC 2.0, application is unable to start with -d64 option. It just hangs. If I remove the -d64, it can start. Why? We need -d64 for optimization.


JAVA_OPTS="-d64 -XX:+ForceMmapReserved -Xms1g -Xmx1g -Xmn256m -XX:+UseParallelGC -XX:Paralle
lGCThreads=8 -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC -Djava.rmi.server.hostname=$HOST -Djava.rmi.server.useLocalHostname=false -Dpowercomp.server.id=$INSTANCE"
30 REPLIES 30
Steven E. Protter
Exalted Contributor

Re: -d64 does not work on JDK1.5.0.10

Shalom,

Problem introduced by Java. There are at least two new subversion released. 1.5.0.0.12

http://www.hp.com/go/java

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

Thanks, SEP. I installed the latest JDK1.5.0.14 and I am still unable to start the application. Once I removed the "-d64", it started. Any other ideas?
The patches are all up-to-date.
Jov
Honored Contributor

Re: -d64 does not work on JDK1.5.0.10

Hi,

Check the actual version you're running and ensure path and symlink are all updated after the installation.


Jov
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

Thanks, Jov. I updated the path and it still does not start. It doesn't even create any logs. The java process does not even initiate.
Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>It doesn't even create any logs. The java process does not even initiate.

You might want to use "tusc -fp -o tusc.out ..." to trace what's going on.

>We need -d64 for optimization.

What did you mean by that? You need -d64 because you need the large size. I suppose you could use the large size and changed algorithms to be faster.
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

I get the following VM initialization error.
Once, I omit the "-d64" in the $JAVA_OPTS parameter, jboss now starts so I am convinced that Java works! I am out of ideas now. :(

/opt/jboss/jboss-4.0.3SP1/bin > =========================================================================

JBoss Bootstrap Environment

JBOSS_HOME: /opt/jboss/jboss-4.0.3SP1

JAVA: /opt/java1.5/bin/java

JAVA_OPTS: -d64 -XX:+ForceMmapReserved -Xms1g -Xmx1g -Xmn256m -XX:+UseParallelGC -XX:ParallelGCThreads=4 -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC -Xverbosegc:file=/opt/jboss/jboss-4.0.3SP1/server/dendev/log/20080808122407.8380.gc -Djava.rmi.server.hostname=hpux04.insureworx.com -Djava.rmi.server.useLocalHostname=false -Dpowercomp.server.id=8380 -Dprogram.name=run.sh

CLASSPATH: /opt/jboss/jboss-4.0.3SP1/bin/run.jar:/opt/java1.5/lib/tools.jar

=========================================================================

Error occurred during initialization of VM
java.lang.NoSuchMethodError: java.lang.Thread.start()V
./run.sh[174]: 4492 Abort
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

By the way, the above init error was done on JDK1.5.0.14 and the -d64 still fail.

Much appreciations to those who response.
Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>I get the following VM initialization error.
>Error occurred during initialization of VM
java.lang.NoSuchMethodError: java.lang.Thread.start()V

Have you talked to the Response Center about this problem?

Did you try using tusc to trace for system call failures?
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

Dennis,

No, I have not talked to the Response Center as I don't have a support contract with them.

I tried tusc but it is not installed on the system.

What I found out is that the JDK that HP provides on the download site is not 64 bit to begin with...just 32. I've posted a question to their download team. Hopfully, I will get a fix soon.

When I do a "./java -d64 -version", it core dumps.
Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>I tried tusc but it is not installed on the system.

Then you haven't tried tusc. :-)
Check this thread for download info:
http://forums.itrc.hp.com/service/forums/questionanswer.do?threadId=1226906

>is not 64 bit to begin with... just 32.

Why do you think that?

You might want to use hpjconfig to check your system:
http://h20392.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=HPJCONFIG
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

OK. I've installed both hpjconfig and tusc.

hpjconfig tells me that "All required patches are installed on this system."

my tusc outputs are attached. Can anyone tell me what's wrong? tusc.out comes from the "java -d64 -version"

The same error returns at the prompt and core dumps:
"Error occurred during initialization of VM
java.lang.NoSuchMethodError: java.lang.Thread.start()V"

Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>my tusc outputs are attached. Can anyone tell me what's wrong?

The initial java is exec(2). That execs the 64 bit java:
/opt/java1.5.0.14/bin/PA_RISC2.0W/java
It opens:
/opt/java1.5.0.14/jre/lib/PA_RISC2.0W/jvm.cfg
/opt/logNtrace/parameterList
/opt/java1.5.0.14/jre/lib/PA_RISC2.0W/plugins
/dev/log
/usr/lib/tztab

Gets error on:
/opt/java1.5.0.14/jre/lib/PA_RISC2.0W/server/libjvm.sl ERR#22 EINVAL

These must be normal?

{760803} Received signal 11, SIGSEGV, in user mode, [0x800003fff8fa08c0],

This is the standard bogus signal 11.
Lots of threads are started.
These opens fail:
/opt/java1.5.0.14/jre/lib/PA_RISC2.0W/server/.hotspot_compiler ERR#2 ENOENT
.hotspot_compiler ERR#2 ENOENT

It seems it was reading /opt/java1.5.0.14/jre/lib/rt.jar before it wanted to open .hotspot_compiler. And before it printed the error.
Steven E. Protter
Exalted Contributor

Re: -d64 does not work on JDK1.5.0.10

Shalom,

From this angle it looks like bad code.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>SEP: From this angle it looks like bad code.

But on whose part? :-)

This thread indicates it happens for a trivial java program:
http://forums.itrc.hp.com/service/forums/questionanswer.do?threadId=1257660
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

I thought it was bad code,too so I reinstalled. However, it didn't resolve the issue. What's even more weird is that I took the install depot file to another HPUX box w/ identical o.s. and hardware, and it works there!! I am stuck!
Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>I took the install depot file to another HP-UX box with identical OS and hardware

Is the kernel parms the same between the two?
Are the environ(5) variables the same for the two users?
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

the env variable shouldn't have an affect since I do a "./" in the working directory.

what is the best command to show all kernal parameters?
Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>the env variable shouldn't have an affect since I do a "./"

There are zillions of variables besides PATH, I want you to compare all of them.

>what is the best command to show all kernel parameters?

For 11.11, there is kmtune(1m), otherwise kctune(1m).
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

OK. Thanks, I will compare.

What is so weird about this problem is that 1 version of java is fine but the other 1 is not on the same box and when I move the 1.5.0.14 to another hpux box, it is fine there. ?????
------------------
/opt/java1.5/bin > ./java -d64 -version
java version "1.5.0.04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0.04-_27_jul_2006_10_52)
Java HotSpot(TM) 64-Bit Server VM (build 1.5.0.04 jinteg:07.27.06-13:54 PA2.0W (aCC_AP), mixed mode)
/opt/java1.5/bin >
/opt/java1.5/bin > cd /opt/java1.5.0.14/bin
/opt/java1.5.0.14/bin > ./java -d64 -version
Error occurred during initialization of VM
java.lang.NoSuchMethodError: java.lang.Thread.start()V
Abort
/opt/java1.5.0.14/bin >
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

Here are the kernel parameters that differ between the 2 machines.

-d64 does NOT work on HPUX04.
-d64 works on HPUX05.

I updated max_thread_proc in HPUX04 and rebooted. Still having the same error.

Any thing else I should change?
--------------------
HpUX04 HPUX05
Ksi_alloc_max 32768 32928
Max_thread_proc 256 3000
Maxfiles 256 2048
Maxswapchunks 16384 2048
Maxuprc 4000 500
msgmap 4098 2050
msgmni 4096 1024
msgtql 4096 2048
ncsize 72704 10820
nfile 63488 16272
ninode 34816 5700
nkthread 7184 7219
Nproc 4096 4116
nsysmap 8192 8232
nsysmap64 8192 8232
semmap 4098 2050
semmni 4096 2048
semmns 8192 4096
semmnu 4092 1024
shmmax 0xaccccccc 966367642
Dennis Handly
Acclaimed Contributor

Re: -d64 does not work on JDK1.5.0.10

>I updated max_thread_proc in HPUX04 and rebooted. Still having the same error.

That would be my first guess but I don't remember any errors in thread creation.

There is also: maxfiles 256 2048
These seem too close to worry about:
nkthread 7184 7219
nproc 4096 4116
nsysmap 8192 8232
nsysmap64 8192 8232

You could use tusc on the good system to see where things diverge.
And use -fpl for both instead of just -fp.
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

I am attaching the "goodtusc" and "badtusc" for review.

Thanks ALOT, Dennis!!
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

here's the badtusc.out with the error
aycf
Advisor

Re: -d64 does not work on JDK1.5.0.10

Does anyone know what "lwp_self" is? I do not see that kernel parameter at all.

goodtusc.out
_lwp_self() ...................... = 8925981
badtusc.out
_lwp_self()...................... = 17313