Article ID: 909379 - Last Review: November 2, 2007 - Revision: 2.5 FIX: You receive a 17883 error message when you run a complex query against SQL Server 2000
BUG #: 473858 (SQL Server 8.0) Microsoft distributes Microsoft SQL
Server 2000 fixes as one downloadable file. Because the fixes are cumulative,
each new release contains all the hotfixes and all the security fixes that were
included with the previous SQL Server 2000 fix
release. On This PageSUMMARYThis article describes the following about this hotfix
release:
SYMPTOMSWhen you run a complex query against Microsoft SQL Server
2000, the SQL Server scheduler may stop responding (hang). Additionally, you
receive an error message that resembles the following: Date Time
server Error: 17883 Severity: 1, State: 0 Date
Time server Process 52:0 (94c) UMS
Context 0x121A9C98 appears to be non-yielding on Scheduler 3.
894905
(http://support.microsoft.com/kb/894905/
)
Cumulative list of the hotfixes that are available for SQL Server 2000 Service Pack 4
RESOLUTIONThe installer does not install this hotfix correctly on x64-based systems. This installation issue occurs when the following conditions are true:
Hotfix informationA supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem.If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix. Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site: http://support.microsoft.com/contactus/?ws=support
(http://support.microsoft.com/contactus/?ws=support)
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.Prerequisites
Restart informationYou do not have to restart the computer after you apply this hotfix.Registry informationYou do not have to change the registry.Hotfix file informationThis hotfix contains only those files that are required to correct the issues that this article lists. This hotfix may not contain all the files that you must have to fully update a product to the latest build.The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel. 32-bit hotfixCollapse this table
64-bit hotfixCollapse this table
64-bit hotfix for Itanium processorsCollapse this table
STATUSMicrosoft
has confirmed that this is a problem in the Microsoft products that are listed
in the "Applies to" section. MORE INFORMATIONThis problem occurs after a period of 60 seconds or more.
After this time, the system server process ID (SPID) that performs the complex
conditions that are mentioned in the "Symptoms" section does not yield control
of the User Mode Scheduler (UMS). This behavior may cause query delays and
time-outs. Additionally, you cannot log on during this time. There are many possible causes of error 17883. This hotfix addresses only the conditions that are mentioned in the "Symptoms" section. However, this hotfix is cumulative and contains prior fixes. Therefore, this hotfix may help because this hotfix includes other fixes for error conditions that are unrelated to these symptoms. To distinguish this problem from the other possible causes of error 17883, review the stack information about the hung thread. This stack information is in the minidump file that is automatically created in the SQL Server Log folder when error 17883 occurs. For help reviewing the minidump file and determining whether this problem is the likely cause of error 17883, contact Microsoft Product Support Services. Other possible causes of error 17883 include the following:
Stack informationWhen the SQL Server scheduler stops responding, SQL Server creates a minidump file in the Log folder. If you open the minidump file in a debugger and switch to the thread ID that is mentioned in the error message, you may notice the following stack information:0:033> kpn 100 # ChildEBP RetAddr 00 12afbd40 00744dcb sqlservr!DRgCId::IMember(class CValRef * pvr = 0x4b786a20)+0x21 [R:\sql\ntdbms\query\qeoptim\dbi\optutil.cpp @ 14148] 01 12afbd80 0050f638 sqlservr!CLogOp_UnionAll::FMatchExpr(class COpArg * pOpArgOther = 0x000001a0)+0xdf [R:\sql\ntdbms\query\qeoptim\dbi\op_log.cpp @ 4343] 02 12afbda8 005660fb sqlservr!CGroupExpr::FMatchGrpExpr(class CGroupExpr * pgexpr = 0x5bad0290, class CGroupProperties * pgp = 0x00000000, int fGroupNumberOnly = 0)+0x2e [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 1705] 03 12afbdc8 005684c2 sqlservr!CGroup::FIsDupThroughMerging(class CGroupExpr * pgexpr = 0x59107748, class CGroupExpr * pgexprList = 0x5bf93dd8)+0x4e [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 1895] 04 12afbddc 0056845a sqlservr!CGroup::MarkDupThroughMerging(void)+0x21 [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 1841] 05 12afbe44 0070d06c sqlservr!CGroup::Merge(class CGroup * pgrpOther = 0x5171155c)+0x12d [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 1998] 06 12afc11c 0046f000 sqlservr!CMemo::PgexprIncludeRoot(class COptExpr * pexprQuery = 0x4b798160, int * rggrpnoChildren = 0x12afc158, int fCouldBeDup = 1, class CTaskContext * ptc = 0x475e8240, int grpnoRoot = 4253, int * rggrpnoLeaves = 0x00000000, int iTask = 99909, int iSubst = 0, int ruleidObtainedFrom = 1498413264, int * pfIsDuplicate = 0x12afc2d0, int * pfNewInRoot = 0x12afc664, int * pfMerged = 0x12afc66c, int * pfRemove = 0x12afc698)+0x1e5 [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 2782] 07 12afc2e4 00470650 sqlservr!CMemo::PgexprInclude(class COptExpr * pexprQuery = 0x00000001, class CTaskContext * ptc = 0x475e8240, int grpnoRoot = 4253, int * rggrpnoLeaves = 0x12afc318, int iTask = 99909, int iSubst = 0, int ruleidObtainedFrom = 49, int * pfIsDuplicate = 0x00000000, int * pfNewInRoot = 0x12afc664, int * pfMerged = 0x12afc66c, int * pfRemove = 0x12afc698)+0x15c [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 2599] 08 12afc6b8 00472de5 sqlservr!CTask_ApplyRule::Perform(int iTask = 99909)+0x2f9 [R:\sql\ntdbms\query\qeoptim\engine\tasks.cpp @ 1795] 09 12afc6e0 00472a8a sqlservr!CMemo::ExecuteTasks(class COptTask * potInitial = 0x51709660, int fPrintMemoInitial = 0, int fPrintMemoFinal = 0)+0x13c [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 3498] 0a 12afc7c0 00472640 sqlservr!CMemo::OptimizeQuery(class CQuery * pquery = 0x4b983ed8, class COptExpr * pexpr = 0x00000002, double * pcuFound = 0x4b798b10, int fPrintMemoInitial = 0, int fPrintMemoFinal = 0, struct s_OptimPlans * psPlans = 0x12afc80c)+0x501 [R:\sql\ntdbms\query\qeoptim\engine\memo.cpp @ 3824] 0b 12afc848 0045d1e4 sqlservr!COptContext::PexprSearchPlan(class COptExpr * pexpr = 0x4b734198)+0x141 [R:\sql\ntdbms\query\qeoptim\engine\qeoptim.cpp @ 1814] 0c 12afe9b8 0045c264 sqlservr!COptContext::PcxteOptimizeQuery(class COptExpr * pexpr = 0x4b734198, class DRgCId * pdrgcid = 0x518ecc98)+0xb38 [R:\sql\ntdbms\query\qeoptim\engine\qeoptim.cpp @ 1343] 0d 12afea60 0045c03f sqlservr!CQuery::Optimize(void)+0x3f9 [R:\sql\ntdbms\query\qeoptim\engine\qeoptim.cpp @ 596] 0e 12afea7c 0046158c sqlservr!CQuery::Optimize(unsigned long cExpectedRuns = 1)+0x30 [R:\sql\ntdbms\query\qecore\qryimp.cpp @ 1114] 0f 12afebf0 0046133a sqlservr!CCvtTree::PqryFromTree(class TREE * ptrIn = 0x73e28298, class IMemObj * pmoCompile = 0x4b738030, class CRangeCollection * prc = 0x4b983e98, unsigned long qprop = 0x40020, class CCompPlan * pcp = 0x4b798ac0)+0x29d [R:\sql\ntdbms\query\qeint\cvt_tree.cpp @ 1139] 10 12afecfc 004612a7 sqlservr!BuildQueryFromTree(class TREE * ptrIn = 0x73e28298, class IMemObj * pmo = 0x4b738030, class IMemObj * pmoTree = 0x73e28020, class IQueryObj ** ppqryObj = 0x4b738504, class CRangeCollection * prc = 0x4b983e98, unsigned long qprop = 0x40020, class CCompPlan * pcp = 0x4b738098)+0x46 [R:\sql\ntdbms\query\qeint\cvt_tree.cpp @ 545] 11 12afed3c 0046bb3f sqlservr!CStmtQuery::InitQuery(class CAlgStmt * ptrSeq = 0x73e28298, class CCompPlan * pcp = 0x4b738030, unsigned long qprop = 0x40020)+0x13e [R:\sql\ntdbms\msql\proc\stquery.cpp @ 678] 12 12afed64 00609910 sqlservr!CStmtDML::InitNormal(class CAlgStmt * ptrSeq = 0x73e28140, class CCompPlan * pcp = 0x4b738098, unsigned long qprop = 0x40020)+0x11b [R:\sql\ntdbms\msql\proc\stquery.cpp @ 1604] 13 12afed98 005e3d0a sqlservr!CStmtSelectInto::CStmtSelectInto(class CAlgStmt * ptrSeq = 0x73e28140, class CCompPlan * pcp = 0x4b738030)+0x9c [R:\sql\ntdbms\msql\proc\stquery.cpp @ 2977] 14 12afedd8 0044ca52 sqlservr!CCompPlan::FCompileStep(class CAlgStmt * ptrSeq = 0x73e28140, class CStatement ** ppst = 0x12aff458)+0xb46 [R:\sql\ntdbms\msql\proc\compplan.cpp @ 1695] 15 12aff490 0041b598 sqlservr!CProchdr::FCompile(class CCompPlan * pcp = 0x4b738098, class CParamExchange * pxp = 0x00000000)+0xd23 [R:\sql\ntdbms\msql\proc\compplan.cpp @ 1173] 16 12aff608 0044f575 sqlservr!CSQLSource::FTransform(class CParamExchange * pxp = 0x00000000)+0x34c [R:\sql\ntdbms\msql\proc\sqlsrc.cpp @ 889] 17 12aff878 0041af66 sqlservr!CSQLStrings::FTransform(class CParamExchange * pxp = 0x00000000)+0x1a1 [R:\sql\ntdbms\msql\proc\sqlsrc.cpp @ 1661] 18 12aff8c0 0048dae8 sqlservr!CSQLSource::Execute(class CParamExchange * pxp = 0x00000000)+0x15b [R:\sql\ntdbms\msql\proc\sqlsrc.cpp @ 1140] 19 12affa64 004292a5 sqlservr!language_exec(struct srv_proc * srvproc = 0x44246098)+0x3e1 [R:\sql\ntdbms\msql\ods\c_events.cpp @ 735] 1a 12affefc 41072838 sqlservr!process_commands(struct srv_proc * srvproc = 0x44246098)+0x10e [R:\sql\ntdbms\msql\ods\c_events.cpp @ 1771] 1b 12afff70 410725b3 ums!ProcessWorkRequests(class UmsWorkQueue * workque = 0x00c664a8)+0x272 [R:\sql\ums\src\umsworkq.cpp @ 451] 1c 12afff84 77bc90a2 ums!ThreadStartRoutine(void * parms = 0x514d68ff)+0x98 [R:\sql\ums\src\umsthrd.cpp @ 263] 1d 12afffb8 77e4a990 msvcrt!_threadstart(void * ptd = 0x11e45e70)+0x70 [d:\srv03rtm\base\crts\crtw32\startup\thread.c @ 242] 1e 12afffec 00000000 kernel32!BaseThreadStart(<function> * lpStartAddress = 0x77bc9032, void * lpParameter = 0x11e45e70)+0x34 [d:\srv03rtm\base\win32\client\support.c @ 533] REFERENCES For more information about error 17883, click the following
article number to view the article in the Microsoft Knowledge Base: 319892
(http://support.microsoft.com/kb/319892/
)
New concurrency and scheduling diagnostics have been added to SQL Server
For more information, click the
following article number to view the article in the Microsoft Knowledge Base: 824684
(http://support.microsoft.com/kb/824684/
)
Description of the standard terminology that is used to describe Microsoft software updates
| Article Translations
|
Back to the top
