BUG: Error message when you process a mining structure in SQL Server 2005 Analysis Services: "Internal error: An unexpected error occurred (file 'dmcorrcountutils.cpp', line 2045, function 'DMCC_WorkerJobCaseProcessor::CacheCase')" (922267)



The information in this article applies to:

  • Microsoft SQL Server 2005 Analysis Services

Bug #: 978 (SQL Hotfix)
Bug #: 443542 (SQLBUDT)

SYMPTOMS

When you process a mining structure in Microsoft SQL Server 2005 Analysis Services, you receive the following error message:
Internal error: An unexpected error occurred (file 'dmcorrcountutils.cpp', line 2045, function 'DMCC_WorkerJobCaseProcessor::CacheCase')
This problem occurs if the following conditions are true:
  • The mining structure contains a calculated measure as one of the case-level columns of the mining structure.
  • The expression of the calculated member returns an infinite value.

    For example, you specify the following expression for the calculated measure:

    ([Sales Amount]/[Internet Sales Count])

    If the value of [Internet Sales Count] is 0, the expression returns an infinite value.
Additionally, SQL Server generates a minidump file when this problem occurs. The minidump file contains the following information:
ChildEBP RetAddr  Args to Child              
091cfa68 019a53c5 000042ac 00000000 00000000 kernel32!RaiseException+0x53 
091cfab4 0120cee3 01dc40b4 091cc5a5 03deb78c msmdsrv!CDmpDump::Dump+0x95 
091cfb00 01203029 00000001 091cc5b5 00000001 msmdsrv!PFWatsonMiniDumpToLocalFile+0x243 091cfb20 0116846e 03deb78c 75f40430 01ece958 msmdsrv!PFError::LogError+0x569 
091cfb5c 01168377 091cfbc4 01a18d62 00000000 msmdsrv!PFData<unsigned short>::Append+0xee 
091cfb74 0120595c 091cc525 00000000 00000000 msmdsrv!PFBaseString::Append+0x57 
091cfbd4 01204f2b 01149aa8 010559e8 1000000f msmdsrv!PFError::SetLastErrorNote+0x49c 
091cfc18 01205138 c1000000 01047a58 011497f8 msmdsrv!PFSetLastErrorExTag+0x10b 
091cfca0 019439f9 000007fd 01149aa8 7b44c0a4 msmdsrv!PFSetInternalErrorInfo+0x68 
091cfcf0 019436b3 7b44c010 00000000 00010000 msmdsrv!DMCC_WorkerJobCaseProcessor::CacheCase+0x2e9 
091cfd40 01756698 7b44c0b4 0001f694 00000003 msmdsrv!DMCC_WorkerJobCaseProcessor::ProcessCase+0x273 
091cfd64 01756449 78d00010 0001f694 00000003 msmdsrv!DMCaseSet::DoProcessCase+0xe8 
091cfe8c 01755a5f 78d00010 78138ad1 091cff0c msmdsrv!DMCaseSet::ProcessCases+0x599 
091cfe9c 01298a7b 7f6aeb70 091cc009 091cff50 msmdsrv!DMCaseSetJob::LaunchOperation+0x2f 
091cfecc 011dffac 00000000 00000000 091cc045 msmdsrv!PCJob::ExecuteTask+0x7b 
091cff0c 011dfe02 01db6668 03deb780 091cc1c9 msmdsrv!PFThreadPool::ExecuteJob+0x14c 
091cff6c 011e02cb 01db6668 01e9cc18 781329aa msmdsrv!PFThreadPool::WorkerMethod+0x212 
091cff78 781329aa 75e9cc18 0717857c 00000000 msmdsrv!PFProcessThreadPool::ThreadProc+0x1b 
091cffb0 78132a36 00000000 7c826063 00a5b3d0 msvcr80!_callthreadstartex+0x1b 
091cffb8 7c826063 00a5b3d0 00000000 00000000 msvcr80!_threadstartex+0x66

CAUSE

This problem occurs because Analysis Services does not allow an infinite value in the expression of a calculated measure.

WORKAROUND

To work around this problem, use the Iif function in the calculated member of the cube data source.

For example, specify the following expression for the calculated measure:

Iif([Internet Sales Count]=0, 0, [Sales Amount]/[Internet Sales Count])

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section.

Modification Type:MajorLast Reviewed:8/28/2006
Keywords:kbprb kbsql2005as kbsql2005bi kbtshoot KB922267 kbAudDeveloper kbAudITPRO