메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.


오류메세지에 있는것처럼 Full GC가 계속 발생하면서 메모리 해제는 이루어지지 않고 VisualVM을 이용하여 스레드를 확인하면 아래와 같이 다수의 MongoCleaner가 Sleep상태(Full GC에서 모든 쓰레드는 대시 상태가 된다.)에 있고 GC상황을 보면 Old Space가 full 상태에 있으면서 모든 처리가 대기 상태에 있는 경우가 있는데 이것은 mongodb의 커넥션혹은 cursor등을 사용후 닫지 않아서 발생하는 memory leak이라고 볼수 있다. 소스에서 커넥션 혹은 cursor가 제대로 close되었는지 확인하여 조치하여 준다.

20170111_144658.png

20170111_150127.png

20170111_151021.png



-오류 메세지

[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0743223 secs] [Times: user=0.59 sys=0.00, real=0.08 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0779379 secs] [Times: user=0.68 sys=0.01, real=0.08 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0737145 secs] [Times: user=0.63 sys=0.00, real=0.07 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0729195 secs] [Times: user=0.51 sys=0.00, real=0.07 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0822866 secs] [Times: user=0.68 sys=0.00, real=0.09 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0788580 secs] [Times: user=0.66 sys=0.00, real=0.08 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0719421 secs] [Times: user=0.58 sys=0.00, real=0.07 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0724458 secs] [Times: user=0.60 sys=0.00, real=0.08 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0724485 secs] [Times: user=0.60 sys=0.00, real=0.07 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0744425 secs] [Times: user=0.62 sys=0.00, real=0.07 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0751457 secs] [Times: user=0.63 sys=0.01, real=0.07 secs]
[Full GC (Ergonomics) [PSYoungGen: 345088K->345072K(694272K)] [ParOldGen: 2097094K->2097094K(2097152K)] 2442182K->2442167K(2791424K), [Metaspace: 59102K->59102K(1101824K)], 0.0697133 secs] [Times: user=0.51 sys=0.00, real=0.06 secs]


Heap
 PSYoungGen      total 694272K, used 345080K [0x0000000780000000, 0x00000007bfb80000, 0x00000007c0000000)
  eden space 345088K, 99% used [0x0000000780000000,0x00000007950fe270,0x0000000795100000)
  from space 349184K, 0% used [0x00000007aa600000,0x00000007aa600000,0x00000007bfb00000)
  to   space 349184K, 0% used [0x0000000795100000,0x0000000795100000,0x00000007aa600000)
 ParOldGen       total 2097152K, used 2097047K [0x0000000700000000, 0x0000000780000000, 0x0000000780000000)
  object space 2097152K, 99% used [0x0000000700000000,0x000000077ffe5e78,0x0000000780000000)
 Metaspace       used 59114K, capacity 59888K, committed 60672K, reserved 1101824K
  class space    used 7017K, capacity 7233K, committed 7424K, reserved 1048576K

번호 제목 날짜 조회 수
342 [JSON 파싱]mongodb의 document를 GSON을 이용하여 parsing할때 ObjectId값에서 오류 발생시 조치방법 2017.01.18 949
341 [tomcat] logrotate를 이용하여 catalina.out로그파일 일별로 로테이션 저장하기 file 2017.01.18 838
340 spark 2.0.0를 windows에서 실행시 로컬 파일을 읽을때 발생하는 오류 해결 방법 2017.01.12 568
» [MemoryLeak분석]다수의 MongoCleaner 쓰레드가 Sleep상태에 있으면서 Full GC가 계속 발생되는 문제 해결방법 file 2017.01.11 506
338 eclipse 3.1 단축키 정리파일 2017.01.02 170
337 Halyard - RDF4J와 Apache HBase를 이용하여 구현된 TripleStore이며 SPARQL 1.1쿼리를 지원한다. 2016.12.29 811
336 List<Map<String, String>>형태의 데이타에서 중복제거 하는 방법 2016.12.23 2455
335 new Gson().toJson(new ObjectId())을 사용하면 값이 다르게 나오는 경우가 있음 2016.12.23 852
334 Class.forName을 이용한 메서드 호출 샘플소스 2016.12.21 714
333 like검색한 결과를 기준으로 집계를 수행하는 java 소스 2016.12.19 824
332 MongoDB에 있는 특정컬럼의 값을 casting(string->integer)하여 update하기 java 소스 2016.12.19 1036
331 mongodb aggregation query를 Java code로 변환한 샘플 2016.12.15 1272
330 Collections.sort를 이용한 List<Map<String, String>>형태의 데이타 정렬 소스 2016.12.15 922
329 Collections.sort를 이용한 List<User>형태의 데이타 정렬(숫자, 문자에 대해서 각각 asc/desc및 복합정렬) 2016.12.15 628
328 ResultSet에서 데이타를 List<Map<String,String>>형태로 만들어서 리턴하는 소스(Collections.sort를 이용한 정렬 가능) 2016.12.15 1150
327 hbase startrow와 endrow를 지정하여 검색하기 샘플 2016.12.07 250
326 jena의 data폴더를 hadoop nfs를 이용하여 HDFS상의 폴더에 마운트 시키고 fuseki를 통하여 inert를 시도했을때 transaction 오류 발생 2016.12.02 249
325 Jena 2.3를 Hadoop 2.7.2의 NFS로 mount하고 fuseki를 이용하여 start할때 오류 메세지 2016.12.02 1715
324 S2RDF를 이용한 다른 버젼의 github링크 2016.12.02 502
323 Mountable HDFS on CentOS 6.x(hadoop 2.7.2의 nfs기능을 이용) 2016.11.24 841
위로