ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 리눅스 커널 버그로 인한 thread Hang....
    IT 2009. 3. 26. 15:49

    현재 직장에서 8년 동안 딱 한 번 경험한 현상.

    2006년 여름, 고객사에 납품한 솔루션이 어느순간 아무런 이유 없이 멈춰 버림

    동일한 솔루션이 설치된 수많은 레퍼런스를 보유하고 있었지만, 한 번도 경험한 적 없던 황당한 시츄에이션..

    프로그램 로직을 다시 검토하면서, 설계 및 코딩 상에서의 오류를 검토해도 답이 안나옴.

    결국 솔루션의 문제가 아니라는 잠정 결론하에... 환경적 요인을 검토.

    문제가 된 고객사 리눅스 커널 버전에서는 동일 현상 반복되나, 긴급히 마련한 테스트 장비에 다른 버전의 리눅스 커널을 

    설치 하고 동일 테스트 반복하였으나 문제 발생 안함은 물론 이며 초당 100 qeury 이상의 부하를 정상 처리함.

    문제의 원인이 된 리눅스 버그 내용...

    http://www.mail-archive.com/java-linux@java.blackdown.org/msg15555.html

    일단은 위 문서에 나온대로 환경 변수를 설정하고, 문제가 발생한 서버에서 다시 테스트 한 결과 Thread hang이 재현 안됨.

    고객사에 해당 내용과 테스트 결과를 알리고, 커널 업그레이드를 요청함.

    문제 해결됨.



    지금에서 예전 상황을 다지 곱씹어 보는 것은.. 이와 유사한 현상이 발생했기 때문입니다.

    차이가 있다면, 상위 버전의 리눅스 커널(2.6.18-55) 에서 문제가 발생하고, 하위 버전(2.6.9-54)에서는 발생하지 않는 다는 것이죠. 

    또한.. 문제 상황 재현이 이전에 비해 쉽지 않다는 것도 있습니다. 

    다행히도 고객사 측에서 현재 상황을 잘 이해해 주고, 장비 swap을 통해서 문제가 발생하는 서버를 테스트 할 수 있도록 해 준다니 그나마 다행입니다.

    문제의 원인 파악이 안 될 경우,  문제를 최대한 많이 재현해야 하며, 재현할 수 있는 조건을 찾는게 우선인 듯 합니다.

    다음 주 부터는 서버 모니터링으로 한 주를 보낼 듯 하네요

    'IT' 카테고리의 다른 글

    검색서비스 & 검색엔진  (2) 2009.04.08
Designed by Tistory.