scouter icon indicating copy to clipboard operation
scouter copied to clipboard

java11에서 java 17로 업그레이드 후 OOM 발생

Open R3ALW1NNER opened this issue 2 years ago • 4 comments

사내 프로젝트에서 java11에서 17로 마이그레이션을 진행하고 하루 반나절 이후 부터 여러 WAS에서 OOM이 발생하고 있습니다.

WAS의 HeapMemory는 약 6.5G로 설정되어 있는 상태입니다.

heapdump를 확인해보니 아래와 같이 나와서 scouter에 의한 문제로 추정되고 있습니다.

One instance of “scouter.javassist.ClassPool” loaded by “” occupies 3,596,573,392 (96.54%) bytes.

#842 이슈와 동일한 이슈로 보입니다.

상세 버전은 아래와 같습니다.

Server: Centos 7 JDK Version: Temurin-17.0.4+8 WAS: SpringBoot Embedded Undertow 2.2.18.Final Scouter Agent: 2.17.1

감사합니다.

R3ALW1NNER avatar Aug 02 '22 02:08 R3ALW1NNER

안녕하세요. @R3ALW1NNER

#842 이슈는 close 했습니다.

일단 제 경험 공유해 드립니다.

  1. 와탭을 붙여본다.
  • 다른 APM에서도 동일하게 OOM이 터지는지 확인 목적

  • 저희 케이스에서는 와탭에서는 OOM이 발생하지 않았습니다.

  1. 힙덤프를 기반으로 스카우터외 다른 오브젝트를 체크한다.
  • 저희의 경우 세션풀을 대량으로 풀링하는 이상한 로직이 있었습닏.

  • 해당 로직을 제거하고 현재는 스카우터 연동해도 OOM 없이 잘 사용하고 있습니다.

LeeMH avatar Aug 18 '22 09:08 LeeMH

javassist 와 java17 간에 호환성 문제가 있습니다. scouter에서 해결할 수 없는 문제라 다음 버전에서 javassist를 비활성화 하는 옵션이 들어갈 예정입니다.

gunlee01 avatar Sep 03 '22 02:09 gunlee01

@gunlee01 안녕하세요, 빠른 확인 감사드립니다.

Javassist 비활성화 옵션으로 확인 후에 이슈 close 하겠습니다.

감사합니다.

R3ALW1NNER avatar Sep 19 '22 02:09 R3ALW1NNER

javassist 와 java17 간에 호환성 문제가 있습니다. scouter에서 해결할 수 없는 문제라 다음 버전에서 javassist를 비활성화 하는 옵션이 들어갈 예정입니다.

scouter의 다음 버전에 현재 문제를 우회할 수 있는 옵션을 추가하실 계획이라는 말씀이실까요? 만약 그렇다면, 2.18.0 pre-release에는 관련 기능 추가 내용이 보이지 않는데, 언제 쯤 추가될지요? *해당 기능이 추가되기 전에 현재 문제를 회피할 수 있는 workaround는 어떤 것이 있을까요?

createall avatar Apr 27 '23 06:04 createall