FIX: Correlated Subquery on Partitioned Views with Text Operations May Cause Access Violation

Article translations Article translations
Article ID: 291274 - View products that this article applies to.
This article was previously published under Q291274
BUG #: 352264 (SHILOH_BUGS)
Expand all | Collapse all

SYMPTOMS

An access violation (AV) may occur when selecting from partitioned views under the following conditions:
  • The views contain at least one text or ntext column.
  • A Text function is used to evaluate a text column in the parent select.
  • Text In Row is enabled for at least one of the tables with a text column, and disabled for at least one other.
The SQL Server errorlog may contain entries similar to the following:
CEs::Eval(unsigned long * 0x1af60248, CEsExec * 0x0047004c, CXVariant * 0x115af134) line 778 + 17 bytes
CParamInfo::FUpdate(unsigned long * 0x1af60248) line 130 + 20 bytes
CQScanNLJoin::PpbAddChangedParams(CParamBounds * 0x115af1f4, unsigned long * 0x1af60248, int 0, int * 0x115af180) line 933 + 30 bytes
CQScanNLJoin::RecomputeInner(CParamBounds * 0x115af1f4, unsigned long * 0x1af60248) line 995
CQScanNLJoin::GetRow(unsigned long * 0x1af60248, unsigned long * 0x1af60248) line 1269
CQueryScan::GetRow(unsigned long * 0x1af60248, unsigned long * 0x1af60248) line 4273 + 27 bytes
CStmtQuery::ErsqExecuteQuery(CMsqlExecContext * 0x1af60060 {CMsqlExecContext}, const CEsComp * 0x1b031e68, const CEsComp * 0x00000000, unsigned long * 0x1af60248, int 1, int 0) line 946 + 21 bytes
CStmtSelect::XretExecute(CMsqlExecContext * 0x1af60060 {CMsqlExecContext}) line 3458 + 37 bytes
CMsqlExecContext::ExecuteStmts(ExecutionContext * 0x1aa8d518) line 1483 + 16 bytes
CMsqlExecContext::Execute(CCompPlan * 0x00000000 {CCompPlan}, CParamExchange * 0x00000000) line 1202 + 12 bytes
CSQLSource::Execute(CParamExchange * 0x00000000) line 1246 + 19 bytes
language_exec(srv_proc * 0x1aa90090) line 682
process_commands(srv_proc * 0x1aa90090) line 1704 + 9 bytes
ProcessWorkRequests(UmsWorkQueue * 0x02574b58) line 431 + 13 bytes
ThreadStartRoutine(void * 0x105c1f90) line 263 + 7 bytes
MSVCRT! 7800bea1()
KERNEL32! 77e92ca8()
				

RESOLUTION

To resolve this problem, obtain the latest service pack for SQL Server 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack

STATUS

Microsoft has confirmed that this is a problem in SQL Server 2000. This problem was first corrected in SQL Server 2000 Service Pack 1.

MORE INFORMATION

The following is an example of a query which may result in the above error:
SELECT 1
FROM v1
WHERE IntColumn <= ALL
      (
        SELECT v2.IntColumn
         FROM v2
         WHERE SUBSTRING(v1.TextColumn,1,5) < 'a'
      )
				
where v1 is defined as:
Select * from db1.dbo.t1
UNION ALL
Select * from db2.dbo.t1
				
v2 is defined as:
Select * from db1.dbo.t2
UNION ALL
Select * from db2.dbo.t2
				
t1 contains 1 int column and 1 text column, and t2 contains only an int column.

Properties

Article ID: 291274 - Last Review: November 5, 2003 - Revision: 3.2
APPLIES TO
  • Microsoft SQL Server 2000 Standard Edition
Keywords: 
kbbug kbfix kbsqlserv2000sp1fix KB291274

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com