PQ78479; 5.0.2: Process ID (PID) varies in admin
console runtime view
Downloadable files
Abstract
Process ID (PID) varies in admin console runtime view and
when requested through scripting
Download Description
The issue seen is that the process ID for servers (on the runtime)
panel will generally vary with each refresh. The same issue can be seen
through wsadmin scripting, when a server mbean is looked up and the PID is
requested.
The problem stems from the most common way Linux implements threading (the
LinuxThreads model)in glibc. Basically, Linux uses the same kernel
constructs for both threads and processes (fork() and pthread_create() are
both implemented ontop of the kernel call clone(). The only difference is
in the flags that get passed to indicate resource sharing). This causes
some unusual side-effects, such as each Linux Thread also gets assigned a
unique PID. This causes confusion and problems with many standard UNIX
style system calls, such as getpid(), waitpid(), and so on. The problem
seen is caused by getpid() always returning the PID of the thread, not the
main process ID (The thread running the main() of the program).
A solution to identifying the main PID, regardless of which thread does
the look has been implemented into the JNI process management code to
correct the PID returns. With this fix, the PID will always be the main
one, and will be consistant.
Prerequisites
Please download the UpdateInstaller below to install this fix.