English 中文(简体)
Java工艺坠毁——需要帮助分析深层垃圾堆
原标题:Java process crashes - Need help to analyze the thread dump
  • 时间:2012-01-16 04:44:50
  •  标签:
  • java

Got a thread dump for the java process always crashes - The symptom is that the application exists without any warnings or errors. The thread dump was made when java application was launching. Can anyone help to find any potential cause here? Thanks


Full thread dump Java HotSpot(TM) 64-Bit Server VM (1.5.0_10-b03 mixed mode):

"Low Memory Detector" daemon prio=10 tid=0x0000000100383cd0 nid=0x19 runnable [0x0000000000000000..0x0000000000000000]

"CompilerThread1" daemon prio=10 tid=0x0000000100382c60 nid=0x18 waiting on condition [0x0000000000000000..0xffffffff298fdcf8]

"CompilerThread0" daemon prio=10 tid=0x0000000100380440 nid=0x17 waiting on condition [0x0000000000000000..0xffffffff29afdf18]

"AdapterThread" daemon prio=10 tid=0x000000010037f570 nid=0x16 waiting on condition [0x0000000000000000..0x0000000000000000]

"Signal Dispatcher" daemon prio=10 tid=0x000000010037e560 nid=0x15 waiting on condition [0x0000000000000000..0x0000000000000000]

"Finalizer" daemon prio=10 tid=0x0000000100367820 nid=0x14 in Object.wait() [0xffffffff2a0ff000..0xffffffff2a0ff628]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xffffffff5c400ad0> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
    - locked <0xffffffff5c400ad0> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
    at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x0000000100366fb0 nid=0x13 in Object.wait() [0xffffffff2a2ff000..0xffffffff2a2ff7a8]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xffffffff5c400950> (a java.lang.ref.Reference$Lock)
    at java.lang.Object.wait(Object.java:474)
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
    - locked <0xffffffff5c400950> (a java.lang.ref.Reference$Lock)

"main" prio=10 tid=0x0000000100121cd0 nid=0x1 runnable [0xffffffff7fff2000..0xffffffff7fff56f0]
    at org.apache.xerces.impl.dtd.XMLDTDProcessor.attributeDecl(Unknown Source)
    at org.apache.xerces.impl.XMLDTDScannerImpl.scanAttlistDecl(Unknown Source)
    at org.apache.xerces.impl.XMLDTDScannerImpl.scanDecls(Unknown Source)
    at org.apache.xerces.impl.XMLDTDScannerImpl.scanDTDExternalSubset(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
    at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:146)
    at org.apache.log4j.xml.DOMConfigurator$2.parse(DOMConfigurator.java:612)
    at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:711)
    at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:618)
    at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:468)
    at org.apache.log4j.LogManager.<clinit>(LogManager.java:122)
    at org.apache.log4j.Logger.getLogger(Logger.java:117)
    at com.lehman.cats.common.mismarketsharereport.history.MarketShareHistoricalLoader.<clinit>(MarketShareHistoricalLoader.java:43)

"VM Thread" prio=10 tid=0x0000000100363240 nid=0x12 runnable 

"GC task thread#0 (ParallelGC)" prio=10 tid=0x0000000100122d00 nid=0x2 runnable 

"GC task thread#1 (ParallelGC)" prio=10 tid=0x00000001001a7440 nid=0x3 runnable 

"GC task thread#2 (ParallelGC)" prio=10 tid=0x00000001001a7f40 nid=0x4 runnable 

"GC task thread#3 (ParallelGC)" prio=10 tid=0x00000001001a8a40 nid=0x5 runnable 

"GC task thread#4 (ParallelGC)" prio=10 tid=0x00000001001a9540 nid=0x6 runnable 

"GC task thread#5 (ParallelGC)" prio=10 tid=0x00000001001aa040 nid=0x7 runnable 

"GC task thread#6 (ParallelGC)" prio=10 tid=0x00000001001aab40 nid=0x8 runnable 

"GC task thread#7 (ParallelGC)" prio=10 tid=0x00000001001ab660 nid=0x9 runnable 

"GC task thread#8 (ParallelGC)" prio=10 tid=0x00000001001ac160 nid=0xa runnable 

"GC task thread#9 (ParallelGC)" prio=10 tid=0x00000001001acc60 nid=0xb runnable 

"GC task thread#10 (ParallelGC)" prio=10 tid=0x00000001001ad760 nid=0xc runnable 

"GC task thread#11 (ParallelGC)" prio=10 tid=0x00000001001ae260 nid=0xd runnable 

"GC task thread#12 (ParallelGC)" prio=10 tid=0x00000001001aed60 nid=0xe runnable 

"GC task thread#13 (ParallelGC)" prio=10 tid=0x00000001001af860 nid=0xf runnable 

"GC task thread#14 (ParallelGC)" prio=10 tid=0x00000001001b0360 nid=0x10 runnable 

"GC task thread#15 (ParallelGC)" prio=10 tid=0x00000001001b0e60 nid=0x11 runnable 

"VM Periodic Task Thread" prio=10 tid=0x0000000100198170 nid=0x1a waiting on condition 
问题回答

It seems MarketShareHistoricalLoader.java:43 line causing this issue. It seems XMLDTDLoader loader failing in building grammar for your inputsource. You may need to findout alterantives like DTD disable etc., Here is a link for understanding java thread dump and disable DTD validaton

也许会错构成4j的原木。





相关问题
Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Logging a global ID in multiple components

I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...

Java Library Size

If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...

How to get the Array Class for a given Class in Java?

I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....

SQLite , Derby vs file system

I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...

热门标签