cancel
Showing results for 
Search instead for 
Did you mean: 

ARIES invokation + Java

SOLVED
Go to solution
Robin J.
Occasional Visitor

ARIES invokation + Java

ok, i have an anomaly i can't explain.

i'm starting a java application (benchmark) as a background job and then check the open files with lsof of the java process. but although i'm using the IA64 JVM on an integrity system, aries32.so is opened by the process and read from. here is the output:

java 12179 root 0u STR 157,0 0t3652 1597 /dev/pts/0->ldterm->ptem->pts
java 12179 root 1u STR 157,0 0t3652 1597 /dev/pts/0->ldterm->ptem->pts
java 12179 root 2u STR 157,0 0t3652 1597 /dev/pts/0->ldterm->ptem->pts
java 12179 root 3r REG 64,0x7 4665108 51 /usr/lib/hpux32/aries32.so
java 12179 root 4u FIFO 0xe0000001317e9108 0t0 30
java 12179 root 5u unix 64,0x8 0t0 12436 /var/spool/sockets/pwgr/client12179 (0x44bff700)
java 12179 root 6u REG 64,0x6 49929936 49742 /opt/java6/jre/lib/rt.jar

number 3r is the file i'm talking about.

i found out that the java wrapper which you normally use to start java program is a PA-RISC2.0 file:

# which java
/opt/java6/bin/java
# file /opt/java6/bin/java
/opt/java6/bin/java: PA-RISC2.0 executable dynamically linked -not stripped

so this would explain why ARIES is needed at startup, BUT why is it still open after it invoked the correct java binary (in my case /opt/java6/bin/IA64N/java).

if i start my application without the wrapper and choose the correct binary right away ARIES never gets invoked and never appears in the open files from the process.

does somebody have an explanation for this?
7 REPLIES
Dennis Handly
Acclaimed Contributor

Re: ARIES invokation + Java

You have already explained the whole issue in detail. Aries is still open since the wrapper doesn't just exec the real binary, so it hangs around.
Robin J.
Occasional Visitor

Re: ARIES invokation + Java

thank you for your reply Dennis. unfortunately i am not quite convinced yet because i found out something different.

i'm normally doing this work on a VM, that's the case where ARIES is still kept open. so i also tried this on a normal server machine (no VM anymore) and there i got no sign of ARIES still being open at runtime. just like it's supposed to be in my opinion.

is there some sort of kernel configuration where one could specify this? i'm unfortunately still pretty new to HP-UX.

maybe someone also has time to check whether on his machine ARIES is kept open or not when running a Java application with the native IA64 JVM.
Dennis Handly
Acclaimed Contributor

Re: ARIES invokation + Java

>I'm normally doing this work on a VM, that's the case where ARIES is still kept open. so i also tried this on a normal server machine (no VM anymore) and there i got no sign of ARIES still being open at runtime. just like it's supposed to be in my opinion.

Is that first process still there?
How are you checking to see if it is open? lsof?

>is there some sort of kernel configuration where one could specify this?

No, why do you care?
Dennis Handly
Acclaimed Contributor

Re: ARIES invokation + Java

Ah, reading more carefully what you said, you should use tusc to see where this file is opened and why it isn't closed and try in your two cases.
Dennis Handly
Acclaimed Contributor

Re: ARIES invokation + Java

I can duplicate it on the latest 11.23 aries patch, PHSS_38526 but not on an older 11.31 PHSS_37553.

I wasn't using HPVM.
Solution

Re: ARIES invokation + Java

Due to a bug in ARIES specific loader /usr/lib/hpux32/pa_boot32.so the file descriptor for ARIES library file /usr/lib/hpux32/aries32.so is not closed. The file descriptor remains open for the entire duration of the process execution. This information can be confirmed by tracing the process using tusc. The issue can be observed on HP-UX 11.23 and 11.31.

This error will be fixed in following ARIES patches (to be available by end of May 2009)

HP-UX 11.23: PHSS_39293
HP-UX 11.31: PHSS_39294

Please report this issue to HP response center and submit a defect report.

Regards
-Rajesh
Robin J.
Occasional Visitor

Re: ARIES invokation + Java

thank you Rajesh and Dennis for pointing this out!