select 해서 insert 및 update시 테이블 lock걸리면서 중지되는 현상 0 0 5,683

by jjdes [Oracle Tuning] oracle lock [2020.07.08 20:33:58]


최근 db 환경이 변경되었는데 변경 전 잘 수행되던 쿼리들이 중지현상이 발생하네요.

-쿼리

insert into table01 ( a, b) select a, b from table02;

update table03 y set y.a= "ok" where y.b in ( select c.b from table04 x where x.c is not null);

예시로 올린 위 두 쿼리처럼 다른 임시 테이블에서 다량의 데이터를 조회해서 사용하고자 하는 테이블에 insert 및 update를 하는 쿼리입니다. 특정 쿼리는 join 수행시 같은 증상이 발생하며 join없이 단일 테이블로 작업을 하면 정상적으로 수행됩니다.

해당 증상 발견 후 테스트 할 때는 lock걸린 세션에 대하여 kill하고 작업을 하였습니다.

쿼리 자체는 db환경 변경 전과 후 동일하며 해당 쿼리 수행시 작업 상태에서 table01 03에 대하여 lock이걸리고 작업은 그상태로 멈추게 됩니다. 

작업하기 위한 공간이 부족하여 그런것인지..

어떠한 환경이 변경되면 이런 현상이 나타날수 있는지 조언 부탁드립니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입