See attachments for details.
I've attached core files and the corresponding hs_err files.
Comments
EVALUATION
The root cause of the first crash is due to a bug inside Solaris AMD64. The default stack size is unlimited which makes implicit null pointer checking used by hotspot VM not working properly. This has been fixed by CR 6374692, but is only available on Solaris 11 release. One of the workaround on the application side is to explicitly set the stack size to some upbound such as 8192. I applied the command "ulimit -s 8192" before I launched the bridge and I haven't noticed the crash at all so far.
As I mentioned, the second crash has been fixed in 1.6.0_04. So I believe by migrating the JDK to 1.6.0_04 and apply the above stack limit command before launching the bridge will fix the problem.
16-01-2008
EVALUATION
I found there are two sorts of crash.
1. During startup of the bridge, the com.sun.voip.server.MemberReceive.register method fails. This happens pretty quickly.
2. After the application running for a while, it crashes at com.sun.voip.server.MemberReceive.saveCurrentContribution compiled method. This seems to be a compiler bug. I tried to exclude the compilation of that particular method and the crash seems gone. I did also try jdk1.6.0_04 and I saw the same method gets compiled, but without any crash. But I definitely saw the first with jdk1.6.0_04, even with the latest build of jdk 7.
We need to look into the first crash, but I believe it would make sense to use jdk1.6.0_04 if possible to avoid the second crash. I've installed jdk1.6.0_04 onto the machine and it would be nice if someone can help to test it to see whether the second sort of crash is gone or not.
12-01-2008
EVALUATION
The error logs show a crash in compiled code which seems to be different to the crash discussed in the attachment. The issue is unlikely to be NIO related as the register method doesn't invoke any JNI/native code.