* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
|
Linux 64bit |
|
CUBRID 9.2 (9.2.21.0005) (64bit release build for linux_gnu) (Jul 13 2015 14:52:46) |
|
[도움말]-[버전정보] 확인 |
|
php |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 | 재현 가능한 Source와 SQL |
관련 테이블(인덱스, 키정보 포함) 정보 | CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
5000만건이 있는 테이블이 있는데.. 이 테이블에 인덱스가 많이 설정되어 있는 경우 데이터를 delete명령으로 삭제할 경우
테이블 락이 오래 걸리나요?
질문 내용이 record lock이 아닌 table lock 으로 문의하신 것을 보면 lock_escalation 에 의해 table lock이 발생한 것으로 보이네요.
평균적으로 한 트랜잭션에서 delete량에 따라 cubrid.conf의 lock_escalation 설정값을 변경해보세요.
해당 설정값은 100,000 인데, 한 테이블의 record lock이 100,000 이상 발생하면 table lock으로 승격된다는 의미이고, index lock을 포함하기때문에 1개의 index가 있는 경우 50,000 정도의 record lock에서 table lock으로 승격됩니다.
해당 설정값 변경시 서버를 restart 하셔야 합니다.
매뉴얼 : https://www.cubrid.org/manual/ko/9.2.0/admin/config.html 참고하세요.