Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6330699
Votes 0
Synopsis (se) VM dies when registering a SelectionKey on severals Selector
Category java:classes_nio
Reported Against
Release Fixed mustang(b57), 5.0u7(b01) (Bug ID:2130971)
State 10-Fix Delivered, bug
Priority: 1-Very High
Related Bugs 4621211
Submit Date 29-SEP-2005
Description
SJSAS 9.0 (Sun Application Server) uses NIO for its HTTP Engine. Removing the workaround for 4953599 and running performance test on Solaris literally kill the VM, without any core/log. The problem seems to be that the C heap is corrupted, so lots of threads stack up trying to get native memory from the C heap. Meanwhile, the compiler thread detects the corruption in the C heap and tries to throw a signal, and the signal handler dies -- so either the entire process dies without a core, or the process hangs.

The attachement contains a pstack log showing the signal thread hanging, and the corresponding jstack output for that.

We've tested with 1.5.0_0X and the problem happens in all version.
Posted Date : 2005-09-29 19:41:39.0
Work Around
N/A
Evaluation
The submitter provided access to the machine and we located the fatal error logs and core file. The current crash is because java.io.File.list is used the non-MT safe readdir (it should be using readdir_r). This is tracked by 4621211. With this fixed we need to do further testing to see if that are other issues - the submitter has accumulated a varied selection of fatal error logs which suggest problems in other areas too.
Posted Date : 2005-09-30 21:55:45.0

--

Indeed there is a second issue. With a preliminary fix for 4621211 there is still random memory corruption. I've tracked it down to a timing bug in the DevPollSelectorProvider. With a preliminary for that the tests with the app server run to completion.
Posted Date : 2005-09-30 21:55:45.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang