FIX: SELECT Statement May Generate Incorrect Results When Hash Join Is Used in the Parallel Query Plan (274765)



The information in this article applies to:

  • Microsoft SQL Server 7.0

This article was previously published under Q274765
BUG #:58212 (SQLBUG_70)

SYMPTOMS

A SELECT statement may generate more result rows than expected if SQL Server chooses a parallel query plan with hash join for a particular query. The number of rows returned may vary from one execution to the next. SQL Server works correctly with most queries, even with similar syntax.

NOTE: Research indicates that we cannot tell what kind of query will encounter the problem based on the query syntax, indexes, and query plan.

WORKAROUND

Disable the parallel plan for this particular query by using a hint:
OPTION (MAXDOP 1)
				
This hint overrides the max degree of parallelism configuration option (of sp_configure) only for the query specifying this option, and suppresses parallel plan generation. For more information on using this query hint, see the SELECT (T-SQL) topic in SQL Server 7.0 Books Online.

STATUS

Microsoft has confirmed this to be a problem in SQL Server 7.0. This problem has been corrected in U.S. Service Pack 3 for Microsoft SQL Server 7.0. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

274799 INF: How to Obtain Service Pack 3 for Microsoft SQL Server 7.0 and Microsoft Data Engine (MSDE) 1.0

For more information, contact your primary support provider.

Modification Type:MajorLast Reviewed:3/14/2006
Keywords:kbBug kbfix KB274765