현상
AIX 환경에서 tbepa 프로세스에 대한 분석이 필요하여 cepa_control을 이용해 dump를 수집하려 할 경우, dump는 생성되지 않고 tbepa 프로세스가 종료(kill)되는 문제가 발생합니다.
$ ps -ef | grep 34931580
tibero 34931580 1 0 11:14:07 - 0:00 tbepa 48 1 180
$ cepa_control -l 5 -p 34931580
Log level change request was set.
Sent a request to tbepa(34931580)
$ ps -ef | grep 34931580
*tbepa process 없음, cepa_control 수행 후 kill 됨
SQL> select ext_find_max(10,20) from dual ;
TBR-2131: Generic I/O error.
*tbepa process와 연결 되었던 session이 종료 됨
SQL
복사
원인
cepa_control 수행 시 tbepa 프로세스에 sigusr1 시그널을 보내 로그 레벨을 변경하거나 메모리 덤프를 생성하도록 되어 있습니다.
하지만 cepa_control 스크립트는 Linux 기준으로 kill -10을 사용하도록 하드코딩되어 있으며, AIX 환경에서는 kill -10이 sigbus 시그널로 동작하여 프로세스가 종료되는 문제가 발생합니다.
해결
하드코딩 된 부분을 SIGUSR1로 보내도록 수정합니다. (적용패치: 326862)
주의
티맥스티베로에서 제공하는 기술지원을 통해 패치를 적용합니다.
참고
AIX 또는 SunOS 환경에서는 $TB_HOME/client/bin/cepa_control의 내용 중 'kill -10 $EPA_PID' 을 'kill -s SIGUSR1 $EPA_PID' 로 수정합니다.
$ vi $TB_HOME/client/bin/cepa_control
...생략
# Send a signal. Signo(10) is SIGUSR1
# kill -10 $EPA_PID
kill -s SIGUSR1 $EPA_PID
echo "Sent a request to tbepa($EPA_PID)"
...생략
SQL
복사