2012-01-10 2 views
0

JRockit R28.1.3-11-141760-1.6.0_24-20110301-1432-linux-x86_64를 사용하여 우리는 J2EE 애플리케이션에서 메모리 누수가 발생하여 결국 애플리케이션이 정지하게됩니다. 지금까지 나는 이클립스 MAT로 분석 한 2 개의 hprof 덤프를 얻었습니다. MAT 결과가 명확하지만 무엇이 원인인지 잘 모르겠습니다. 증가 된 유지 힙을 가진 com.sun.xml.ws.server.WSEndpointImpl의 한 객체가 있습니다. 메모리 덤프가 발생하면 929MB (첫 번째 덤프에서는 ~ 300MB)였습니다. 여기 지배자 트리의 수입의 일부는 다음과 같습니다메모리 누수 WSEndpointImpl

Class Name | Shallow Heap | Retained Heap | Percentage 
com.sun.xml.ws.server.WSEndpointImpl @ 0xafaf0f70 | 176 | 929.780.784 | 69,61% 
|- com.sun.xml.ws.binding.SOAPBindingImpl @ 0xafaf1160 | 72 | 929.046.360 | 69,56% 
| |- com.sun.xml.ws.binding.WebServiceFeatureList @ 0xafaf13e0 | 56 | 929.044.320 | 69,56% 
| | '- java.util.HashMap @ 0xafaf1e58 | 80 | 929.044.264 | 69,56% 
| | |- java.util.HashMap$Entry[16] @ 0xafaf3058 | 152 | 929.044.160 | 69,56% 
| | | |- java.util.HashMap$Entry @ 0xaf9b8f48 | 48 | 928.998.912 | 69,55% 
| | | | '- weblogic.wsee.jaxws.EndpointCreationInterceptorFeature @ 0xaf9b8f80| 32 | 928.998.864 | 69,55% 
| | | | '- java.util.HashSet @ 0xaf9b92f8 | 24 | 928.998.832 | 69,55% 
| | | | '- java.util.HashMap @ 0xaf9b9528 | 80 | 928.998.808 | 69,55% 
| | | | |- java.util.HashMap$Entry[32768] @ 0x9462cb88 | 262.168 | 928.998.704 | 69,55% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x9b672ae8 | 40 | 152.104 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xad2a9360 | 40 | 152.104 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xa3949490 | 40 | 152.104 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xa3a332c8 | 40 | 152.104 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x954ef698 | 40 | 151.440 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xb3acff18 | 40 | 148.256 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xa1db8a38 | 40 | 148.000 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xb9d18ee8 | 40 | 148.000 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xbe6bf4d0 | 40 | 147.896 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xa0397080 | 40 | 147.896 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xbf6693f0 | 40 | 147.896 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xc3c4ddb0 | 40 | 143.792 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x82714140 | 40 | 143.792 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xa0347178 | 40 | 143.792 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x919c9948 | 40 | 143.688 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xbb1f6d28 | 40 | 135.960 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x8c3cd118 | 40 | 135.488 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x91d6e950 | 40 | 134.936 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x8abefe80 | 40 | 134.936 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x89f0aaa8 | 40 | 134.736 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xb0f116a8 | 40 | 134.600 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x9da69938 | 40 | 134.392 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x96cae018 | 40 | 134.392 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0x88691950 | 40 | 134.040 | 0,01% 
| | | | | |- weblogic.wsee.jaxws.ServerLateInitTube @ 0xc201f268 | 40 | 134.040 | 0,01% 
       '- Total: 25 of 36.803 entries  

나는 이러한 표준 자바/웹 로직 클래스입니다 같이 진행하는 방법에 대한 힌트를 부탁드립니다. 개체로 드릴 다운하면 ErrorHandler 개체가 표시되므로 이러한 개체가 잘못된 요청으로 누적 될 수 있습니다. 그러나 몇 가지 인스턴스 만 검사 했으므로 이에 대해 긍정적이지는 않습니다. 테스트 환경에서 이것을 재현하려고 시도하기 전에 당신의 도움을 요청하고 싶습니다.

종류와 관련, 토마스

답변

0

이 알려진 버그 (ID 1303769.1)이며, 패치를 사용할 수 있습니다.

+0

버그? JDK 또는 WebLogic에서? –