环境: Redhat Advanced Server 4, jdk 1.4.2_06, tomcat 5.0.28
症状:jvm大概每一两天就要崩溃一次
解决过程:
hs_err_pidxxx.log 文件当中,前几行是:
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : 11 occurred at PC=0xB4ACA6
Function=strcpy+0x26
Library=/lib/tls/libc.so.6
Current Java thread:
at java.io.UnixFileSystem.deleteOnExit(Native Method)
at java.io.File.deleteOnExit(File.java:881)
at org.apache.commons.fileupload.DefaultFileItem.getTempFile(DefaultFileItem.java:620)
at org.apache.commons.fileupload.DefaultFileItem.getOutputStream(DefaultFileItem.java:557)
at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:406)
commons file upload 网站上也有这个bug
https://issues.apache.org/jira/browse/FILEUPLOAD-95
并且 commons file upload 在1.1当中fix了。
所以最简单的办法就是把1.0升级成1.1 来搞定。
正在试验中,不知道长时间后会不会有问题。