현재 ERP를 개발하고 있는 초보 개발자입니다.
ERP에서 서비스호출 하여 SP를 실행하면 락이 잡힙니다.
sp_lock를 실행하니 아래의 그림처럼 조회되는데
70번 프로시져 자체에는 문제가 없어 보이는데 계속 해서 'TAB'타입의 락이 발생합니다.
프로파일러로 서비스호출 문구를 DB에서 바로 실행하면 락없이 정상적으로 실행됩니다.
그리고 프로시져를 재alter를 하면 ERP에서 락없이 정상적으로 실행되었다가
몇일뒤 다시 해당 락이 재발생합니다.
도저히 어떤 오류인지 알 수가 없어 도움 요청드립니다.
어떤 문제일까요?ㅠㅠ
Comment 1
-
이리
2020.08.31 09:29
가능성은 여러가지가 있을 수 있습니다.
objectid가 1195422182인 테이블이 어떤것인지 한번 확인해 보시고 lock 걸리는 시점에서 해당 SP의 실행계획도 같이 확인해 보셔야 합니다.
table lock escalation이 일어날 수도 있으니 프로파일러로 해당 이벤트도 확인해보시기 바립니다.