데드락에 관한 질문입니다.

kosaja 2014.05.26 12:11 Views : 4250

안녕하세요.

운영중인 서버에 '교착상태'관련 에러가 자주 떠서 dbcc traceon(1204,-1)을 사용하여, 해당 로그를 캡처하였습니다.


일단 다음의 결과를 보긴 했는데, 저것이 무엇을 의미하는지 정확히 알기 힘들어서 질문글 올립니다.

관련 지식이 있으신분의 도움 부탁들립니다.


다음의 해당 로그의 내용입니다.


좀길긴한데, 쿼리관련 내용은 하단쪽에 있습니다.

하단에 보면 따로 주석달아놓긴 했는데, select ~~ update쿼리문이 로그에 잡히긴 합니다. 

해당 쿼리에 문제가 있다는 내용인걸까요?..(서버실에 방문해서 해당 테이블의 인덱스등을 살펴볼 예정이긴 합니다.)


하단의 쿼리문제는 제쳐두고, 다른 인터넷 글들을 검색해보면 바로바로 쿼리가 로그에 찍히는거 같던데. 저같은 경우는 다음처럼,

로그가 쭉 찍히고 나서 상당히 뒤에 쿼리관련 로그가 나오는데요.

윗줄에 찍히는 내용들이 무엇을 의미하는지 알고 싶습니다.

하단에 나오는 쿼리관련 로그도 좀 자세한 설명을 알고싶기도 하고요...


질문이 장황한데... 충고말씀 부탁드립니다.


spid6s Deadlock encountered .... Printing deadlock information <--재앙이 시작됬다는거 같습니다. 서버에 쌓이는 교착상태관                 련    에러메세지의 시간과도 거의 일치합니다.

spid6s Wait-for graph

spid6s NULL

spid6s Node:1  

spid6s PAGE: 7:1:119807               CleanCnt:3 Mode:U Flags: 0x3

spid6s Grant List 1:

spid6s   Owner:0x0000000123E48980 Mode: U        Flg:0x40 Ref:0 Life:00000001 SPID:68 ECID:0 XactLockInfo: 0x0000000119C14B90

spid6s   SPID: 68 ECID: 0 Statement Type: UPDATE Line #: 12

spid6s   Input Buf: RPC Event: Proc [Database Id = 7 Object Id = 1670297010]

spid6s Requested by: 

spid6s  ResType:LockOwner Stype:'OR'Xdes:0x00000000805C7400 Mode: U SPID:76 BatchID:0 ECID:8 TaskProxy:(0x00000001AEEE3AE0) Value:0x149b6c40 Cost:(0/0)

spid6s NULL

spid6s Node:2  

spid6s PAGE: 7:1:119807               CleanCnt:3 Mode:U Flags: 0x3

spid6s Wait List:

spid6s   Owner:0x00000001149B6C40 Mode: U        Flg:0x42 Ref:1 Life:00000001 SPID:76 ECID:8 XactLockInfo: 0x00000000805C7440

spid6s   SPID: 76 ECID: 8 Statement Type: UPDATE Line #: 12

spid6s   Input Buf: No Event: 

spid6s Requested by: 

spid6s  ResType:LockOwner Stype:'OR'Xdes:0x00000000BD135130 Mode: U SPID:76 BatchID:0 ECID:1 TaskProxy:(0x00000001AEEE3840) Value:0x23850f80 Cost:(0/0)

spid6s NULL

spid6s Node:3  

spid6s PAGE: 7:1:119784               CleanCnt:2 Mode:U Flags: 0x3

spid6s Grant List 3:

spid6s   Owner:0x0000000115725F80 Mode: U        Flg:0x40 Ref:0 Life:00000001 SPID:76 ECID:1 XactLockInfo: 0x00000000BD135170

spid6s   SPID: 76 ECID: 1 Statement Type: UPDATE Line #: 12

spid6s   Input Buf: No Event: 

spid6s Requested by: 

spid6s  ResType:LockOwner Stype:'OR'Xdes:0x000000008001FA50 Mode: U SPID:68 BatchID:0 ECID:3 TaskProxy:(0x000000013D185700) Value:0x88cfeac0 Cost:(0/304)

spid6s NULL

spid6s Node:4  

spid6s Port: 0x00000001B0766700  Xid Slot: 0, Wait Slot: -1, Task: 0x00000000008BF288, (Coordinator), Exchange Wait Type: e_waitPipeGetRow, Merging: 0

spid6s ResType:ExchangeId Stype:'AND' SPID:68 BatchID:0 ECID:0 TaskProxy:(0x0000000188EBA510) Value:0x8bf288 Cost:(0/10000)

spid6s NULL

spid6s Victim Resource Owner:

spid6s ResType:LockOwner Stype:'OR'Xdes:0x00000000805C7400 Mode: U SPID:76 BatchID:0 ECID:8 TaskProxy:(0x00000001AEEE3AE0) Value:0x149b6c40 Cost:(0/0)

spid6s Deadlock encountered .... Printing deadlock information

spid6s Wait-for graph

spid6s NULL

spid6s Node:1  

spid6s RID: 15:1:26556:14             CleanCnt:2 Mode:X Flags: 0x3

spid6s Grant List 3:

spid6s   Owner:0x00000000C3E66D40 Mode: X        Flg:0x40 Ref:0 Life:02000000 SPID:52 ECID:0 XactLockInfo: 0x00000001641B7990

spid6s   SPID: 52 ECID: 0 Statement Type: UPDATE Line #: 3

spid6s   Input Buf: Language Event:  if exists(SELECT * FROM test_tabl1   WHERE  Co_Code + Bs_Code + Gr1_Code + Gr2_Code + It_Code = '0102020001' AND  ResultDate = '20140318')   UPDATE test_tabl1      SET It_Paycnt = '0'    , It_Freecnt = '0'    , It_Money = '0'    , ModId = '김테스트'    , ModD  <--이 쿼리의 update에 문제가 있다는 얘기인가요?

spid6s Requested by: 

spid6s  ResType:LockOwner Stype:'OR'Xdes:0x00000000BD134CC0 Mode: U SPID:66 BatchID:0 ECID:0 TaskProxy:(0x000000016F05C538) Value:0x231d7d80 Cost:(0/188)

spid6s NULL

spid6s Node:2  

spid6s RID: 15:1:26528:59             CleanCnt:2 Mode:X Flags: 0x3

spid6s Grant List 3:

spid6s   Owner:0x00000000C41DBBC0 Mode: X        Flg:0x40 Ref:0 Life:02000000 SPID:66 ECID:0 XactLockInfo: 0x00000000BD134D00

spid6s   SPID: 66 ECID: 0 Statement Type: UPDATE Line #: 3

spid6s   Input Buf: Language Event:  if exists(SELECT * FROM test_tabl1      WHERE  Co_Code + Bs_Code + Gr1_Code + Gr2_Code + It_Code = '0106010401' AND  ResultDate = '20130110')   UPDATE test_tabl1      SET It_Paycnt = '0'    , It_Freecnt = '0'    , It_Money = '0'    , ModId = '테스트'    , ModD

spid6s Requested by: 

spid6s  ResType:LockOwner Stype:'OR'Xdes:0x00000001641B7950 Mode: U SPID:52 BatchID:0 ECID:0 TaskProxy:(0x0000000116A2C538) Value:0xcd7b1240 Cost:(0/1060)

spid6s NULL

spid6s Victim Resource Owner:

spid6s ResType:LockOwner Stype:'OR'Xdes:0x00000000BD134CC0 Mode: U SPID:66 BatchID:0 ECID:0 TaskProxy:(0x000000016F05C538) Value:0x231d7d80 Cost:(0/188)

spid6s Deadlock encountered .... Printing deadlock information

spid6s Wait-for graph

spid6s NULL

spid6s Node:1  

spid6s RID: 15:1:26494:46             CleanCnt:2 Mode:X Flags: 0x3

spid6s Grant List 3:

spid6s   Owner:0x00000000CEB95A40 Mode: X        Flg:0x40 Ref:0 Life:02000000 SPID:74 ECID:0 XactLockInfo: 0x00000001641B7990

spid6s   SPID: 74 ECID: 0 Statement Type: DELETE Line #: 1

spid6s   Input Buf: Language Event: (@Param1 nvarchar(2),@Param2 nvarchar(2),@Param3 nvarchar(2),@Param4 nvarchar(2),@Param5 nvarchar(2),@Param6 money,@Param7 money,@Param8 money,@Param9 nvarchar(9),@Param10 nvarchar(8),@Param11 nvarchar(1))DELETE FROM test_tabl1    WHERE (Co_Code = @Param

spid6s Requested by: 

spid6s  ResType:LockOwner Stype:'OR'Xdes:0x00000000A89CEE80 Mode: U SPID:62 BatchID:0 ECID:0 TaskProxy:(0x00000001B23C8538) Value:0xbed82e40 Cost:(0/188)

spid6s NULL

spid6s Node:2  

spid6s RID: 15:1:26146:65             CleanCnt:2 Mode:X Flags: 0x3

No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 466
7889 오라클을 MS-SQL 로 변환하는 방법 [1] trick 2014.05.28 3671
7888 쿼리 문의 드립니다. [3] 아수라발발타 2014.05.28 2508
7887 하위쿼리 개념 좀 알려주세용ㅜ [12] 마힐링 2014.05.28 2646
7886 근태자료 조회 쿼리 [1] 다은빈아빠 2014.05.27 3294
7885 쿼리 문의 드립니다. [2] 죠리퐁 2014.05.27 2664
7884 반환 함수 질문입니다. [5] 제피로스 2014.05.27 2333
7883 dbo 소유자명 질문입니다. sams 2014.05.27 2886
7882 SSMS는 Express 버전 말고 어떤 버전이 존재하나요? [2] 내인생에GG란없다 2014.05.27 3062
7881 최근에~ SQL 엔진 시작안되는 경우!!! 파파곰 2014.05.26 8898
7880 MS SqlServer 2005_Express를 무인설치 할 수 있나요?? [2] 아더왕 2014.05.26 3117
» 데드락에 관한 질문입니다. [6] kosaja 2014.05.26 4250
7878 마지막 입력 데이터를 월별로 구분하고 싶습니다 [2] 병구 2014.05.26 2239
7877 파일 그룹 관련 질문 드립니다. [2] 수노 2014.05.26 2272
7876 SP1 -> SP2 업데이트 시 오류입니다. AuRa노송 2014.05.26 2710
7875 mssql 2000 사용자 저장 프로시저 목록 확인할 방법 없을 까요 ? [3] 자비드 2014.05.25 4027
7874 디비 복원 질문드립니다. [6] 철쑤 2014.05.22 10654
7873 sp작성 쿼리 질문 드립니다. [3] sams 2014.05.22 2977
7872 가용시간 계산 [2] taz2315 2014.05.22 3134
7871 primary key를 포함한 테이블의 데이터를 복사하는 방법. [1] 변자 2014.05.22 3197
7870 DB 커넥션 시간제한이 얼마인가요? [1] 파파곰 2014.05.21 3446





XE Login