나름 SQL Server 짬이 좀 된다 싶었는데 예상치 못한 오류를 보고
살짝 안습입니다.
#### 오류 발생 SQL 구문 #####
select top 100
*
from SMS..VmsgLog
where periods = '201404'
and msgType = 'SMS'
and etc2 = '10020'
and etc3 = '10484'
order by 3
##### 오류 메시지 #######
Location: "qstopsrt.cpp":404
Expression: fFalse
SPID: 67
Process ID: 1304
Location: qxcntxt.cpp:1221
Expression: cref == 0
SPID: 67
Process ID: 1304
메시지 21, 수준 20, 상태 1, 줄 1
경고: 05 29 2014 3:37AM에 오류 3624이(가) 발생했습니다. 오류와 시간을 기록한 다음 시스템 관리자에게 문의하십시오.
메시지 0, 수준 20, 상태 0, 줄 0
현재 명령에서 서버 오류가 발생했습니다. 결과가 있을 경우 이를 무시해야 합니다.
좀 당혹스러웠습니다.
위 구문에서 (총 12개 대상행 출력)
Order by 구문 제거시 : 정상
select top 100 --> 120 : 정상
select top 12 : 정상
select top 14 : 정상
select top 15 ~ 100 : 오류
select top 101+ : 정상
select top 100 with ties : 정상
해당 뷰는 여러개의 테이블을 union 하여 사용하나
조건절에서 구분하여 1개의 테이블만을 바라보고 있습니다.
어쨋든 대략 당혹스러운 오류 .. 고수님들께 답변을 구합니다.
그럼 수고하세요.
Comment 4
-
꼬셔죠
2014.05.29 13:40
넹.. 당근 저도 검색하여 checkdb 까지 해봤습니다만 역시나 더군요
혹시나해서 SP1까지 설치해 봤지만 결과는 동일 했습니다.
assertion fail 은 소프트웨어 버그일 확률이 높다는 것도 확인했습니다.
어찌됐건 황당한 에러패턴이 당혹스러움을 유발시키네요.
시간이 허용한다면 Adventureworks로 데이타 만들어 보이고 싶지만 여의치 못한 형편이라..
-
minsouk
2014.05.30 10:24
..
-
꼬셔죠
2014.06.02 10:22
line을 쓰고 있지 않아서요.. quirot@itisn.net 으로 메일 주시면 가능한 방법으로 답변드리도록 하겠습니다.
나름 SQL Server 짬이 좀 된다 싶었는데 예상치 못한 오류를 보고 살짝 안습이네요. ㅎㅎ
대략 qstopsrt.cpp qxcntxt.cpp 로 검색해보니 CHECKDB를 해보라는거 같습니다.