SSIS Package returns unknown error -2146233082

  • Hi,

    My Server running in SQL 2008 R2, have 30+ jobs (calling SSIS packages) running in different time interval.

    issue is im randomly getting below error in different jobs (which are not related)

    "The return value was unknown. The process exit code was -2146233082"

    one more stange thing is, if we start the job again, same running successfully without any error.

    thanks in advance.

    Ram

  • I couldnt see any response for my query.

    can any SSIS expert have any idea abt this error?

    or can u pls tell me the right place to ask this query?

  • I have an update on this as this could help others.

    Its a .net framework issue. new patches provided by Microsoft fixed this problem.

  • We have the same issue but it is intermittent. Could you please let us know what .NET framework patch did you apply on to the database server? I would appreciate it.

  • Abi,

    To find the root cause Microsof team had installed an utility that captured memory dump. MS team analysed the memory dump and found the root cause.

    I am giving complete details (email by Microsoft) having both background of this error and some KBs having the pactch.

    hope you will find this useful.

    Email by Microsoft:

    Based on yesterday’s discussion please find the detailed dump analysis report, which leads us to suspect the intermittent Dot Net Fatal Execution Engine Error [FEEE] message is due to a issue already fixed in the hotfix mentioned in the KB : 2276255 as below :

    BACKGROUND DETAILS

    You have observed that, intermittently, dtexec.exe fails to execute the SSIP packages on one your Windows 2008 Enterprise x64 bit edition with below error message in the Windows Application event log :

    Log Name: Application

    Source: .NET Runtime

    Date: 11/13/2010 10:34:12 AM

    Event ID: 1023

    Task Category: None

    Level: Error

    Keywords: Classic

    User: N/A

    Computer: CTSINTCOSEADB8.cts.com

    Description:

    .NET Runtime version 2.0.50727.4470 - Fatal Execution Engine Error (7166962E) (80131506)

    Log Name: Application

    Source: Application Error

    Date: 11/13/2010 10:34:12 AM

    Event ID: 1000

    Task Category: (100)

    Level: Error

    Keywords: Classic

    User: N/A

    Computer: CTSINTCOSEADB8.cts.com

    Description:

    Faulting application dtexec.exe, version 2009.100.1600.1, time stamp 0x4bb679aa, faulting module mscorwks.dll, version 2.0.50727.4470, time stamp 0x4c5f8956, exception code 0xc0000005, fault offset 0x0003b7a9, process id 0x%9, application start time 0x%10.

    To investigate this issue further, we have configured the DebugDiag 1.2 tool on this particular Windows 2008 server , to capture the memory dump, when dtexec.exe crashes while executing SSIP package. Once the issue has reproduced on the server after configure the DebugDiag 1.2 tool, you uploaded the corresponding dump files to Microsoft FTP Location for complete analysis.

    DUMP ANALYSIS REPORT

    All the dump files where showing the similar kind of data, so I have done a detailed analysis for FEEE by reviewing below dump file :

    dtexec__PID__2800__Date__01_05_2011__Time_04_43_48PM__783__Ntdll!ZwTerminateProcess.dmp

    0:091> vertarget

    Windows Server 2008/Windows Vista Version 6002 (Service Pack 2) MP (32 procs) Free x86 compatible

    Product: Server, suite: Enterprise TerminalServer SingleUserTS

    kernel32.dll version: 6.0.6002.18005 (lh_sp2rtm.090410-1830)

    Machine Name: CTSINTCOSEADB8

    Debug session time: Wed Jan 5 16:43:49.000 2011 (UTC + 5:30)

    System Uptime: 17 days 7:50:58.016

    Process Uptime: 0 days 0:04:15.000

    Kernel time: 0 days 0:00:07.000

    User time: 0 days 0:00:37.000

    0:091> !threads

    ThreadCount: 6

    UnstartedThread: 0

    BackgroundThread: 6

    PendingThread: 0

    DeadThread: 0

    Hosted Runtime: no

    PreEmptive GC Alloc Lock

    ID OSID ThreadOBJ State GC Context Domain Count APT Exception

    0 1 3f50 00472250 8220 Enabled 06f31ce0:06f32fe8 00437668 0 MTA

    34 2 498c 004a7eb0 b220 Enabled 00000000:00000000 00437668 0 MTA (Finalizer)

    36 3 4750 041ddb40 1220 Enabled 00000000:00000000 00437668 0 Ukn

    91 5 4520 3d24d0b0 80a220 Enabled 00000000:00000000 00437668 0 MTA (Threadpool Completion Port) System.ExecutionEngineException (05ce00ec)

    93 4 3924 003c3ec8 220 Enabled 0610b564:0610b774 00437668 0 MTA

    94 6 2830 3d2fbdd8 220 Enabled 0610e288:0610f774 00437668 0 MTA

    So I have checked the detail about Thread 91.

    0:091> kn

    # ChildEBP RetAddr

    00 3ec5f3c0 778c4d9f ntdll!ZwTerminateProcess

    01 3ec5f3dc 773a4273 ntdll!RtlExitUserProcess+0x39

    02 3ec5f3f0 7098c166 kernel32!ExitProcess+0x12

    03 3ec5f618 70a48408 mscorwks!SafeExitProcess+0x157

    04 3ec5f624 70a49639 mscorwks!EEPolicy::HandleFatalError+0x55

    05 3ec5f648 7091e76b mscorwks!CLRVectoredExceptionHandlerPhase3+0xbc

    06 3ec5f67c 7091e609 mscorwks!CLRVectoredExceptionHandlerPhase2+0x20

    07 3ec5f6b0 708fa439 mscorwks!CLRVectoredExceptionHandler+0x10a

    08 3ec5f6c4 778c45f5 mscorwks!CLRVectoredExceptionHandlerShimX86+0x27

    09 3ec5f6e8 778c45c7 ntdll!ExecuteHandler2+0x26

    0a 3ec5f798 7789e49f ntdll!ExecuteHandler+0x24

    0b 3ec5f798 7085ae54 01c5f7b0 3ec5f800 3ec5f7b0 ntdll!KiUserExceptionDispatcher+0xf (FPO: [2,0,0])

    0c 3ec5fae8 7085b7a2 mscorwks!ThreadpoolMgr::GetRecycledMemory+0x5b

    0d 3ec5faf4 7085b746 mscorwks!ThreadpoolMgr::MakeWorkRequest+0xa

    0e 3ec5fb2c 7085b436 mscorwks!UnManagedPerAppDomainTPCount::QueueUnmanagedWorkRequest+0x1d

    0f 3ec5fb60 7085b997 mscorwks!ThreadpoolMgr::QueueUserWorkItem+0x128

    10 3ec5fbf4 7085addc mscorwks!ThreadpoolMgr::FireTimers+0xe6

    11 3ec5fc68 7085ac93 mscorwks!ThreadpoolMgr::TimerThreadFire+0x64

    12 3ec5fc74 7740eccb mscorwks!ThreadpoolMgr::TimerThreadStart+0x57

    13 3ec5fc80 778fd24d kernel32!BaseThreadInitThunk+0xe

    14 3ec5fcc0 778fd45f ntdll!__RtlUserThreadStart+0x23

    15 3ec5fcd8 00000000 ntdll!_RtlUserThreadStart+0x1b

    0:091> .cxr 0x3ec5f800

    eax=00000001 ebx=00000000 ecx=3d24d2c8 edx=00000001 esi=3d24d2c8 edi=00000000

    eip=7085ae54 esp=3ec5facc ebp=3ec5fae8 iopl=0 nv up ei pl nz na po nc

    cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202

    mscorwks!ThreadpoolMgr::GetRecycledMemory+0x5b:

    7085ae54 8b08 mov ecx,dword ptr [eax] ds:002b:00000001=????????

    0:091> dt mscorwks!ThreadpoolMgr::RecycledLists

    <snip>

    +0x040 pGetCurrentProcessorNumber : 0x778ca464 unsigned long ntdll!ZwGetCurrentProcessorNumber+0

    +0x044 pRecycledListPerProcessor : 0x3d24c8a8 [4] ThreadpoolMgr::RecycledListInfo

    <snip>

    The information indicate that, RecyledList() got corrupted, while indexing the number of processors, based on this information, I have engaged the Microsoft Product Group (PG) to investigate, why RecycledList() got corrupted in this scenario.

    PG, indicate, that this kind of behavior normally reported, when the number of processor’s in the operating system is more than 32. So I have checked the processor information and found below details,

    0:091> !cpuid

    CP F/M/S Manufacturer MHz

    0 6,46,6 GenuineIntel 1995

    1 6,46,6 GenuineIntel 1995

    2 6,46,6 GenuineIntel 1995

    3 6,46,6 GenuineIntel 1995

    4 6,46,6 GenuineIntel 1995

    5 6,46,6 GenuineIntel 1995

    6 6,46,6 GenuineIntel 1995

    7 6,46,6 GenuineIntel 1995

    8 6,46,6 GenuineIntel 1995

    9 6,46,6 GenuineIntel 1995

    10 6,46,6 GenuineIntel 1995

    11 6,46,6 GenuineIntel 1995

    12 6,46,6 GenuineIntel 1995

    13 6,46,6 GenuineIntel 1995

    14 6,46,6 GenuineIntel 1995

    15 6,46,6 GenuineIntel 1995

    16 6,46,6 GenuineIntel 1995

    17 6,46,6 GenuineIntel 1995

    18 6,46,6 GenuineIntel 1995

    19 6,46,6 GenuineIntel 1995

    20 6,46,6 GenuineIntel 1995

    21 6,46,6 GenuineIntel 1995

    22 6,46,6 GenuineIntel 1995

    23 6,46,6 GenuineIntel 1995

    24 6,46,6 GenuineIntel 1995

    25 6,46,6 GenuineIntel 1995

    26 6,46,6 GenuineIntel 1995

    27 6,46,6 GenuineIntel 1995

    28 6,46,6 GenuineIntel 1995

    29 6,46,6 GenuineIntel 1995

    30 6,46,6 GenuineIntel 1995

    31 6,46,6 GenuineIntel 1995

    0:073> !peb

    PEB at fffde000

    <snip>

    NUMBER_OF_PROCESSORS=64

    OS=Windows_NT

    <snip>

    PROCESSOR_ARCHITECTURE=x86

    PROCESSOR_ARCHITEW6432=AMD64

    PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 46 Stepping 6, GenuineIntel

    PROCESSOR_LEVEL=6

    PROCESSOR_REVISION=2e06

    <snip>

    This indicate that, even though operating System had 64 processor’s,dtexec.exe detect only 32 processor’s and, this is a know issue with Dot Net Framework 3.5, which is already fixed in Framework 4.0. however PG indicated that, they already released a QFE to address this issue, which is published in the KB : 2276255. So based on this information I have provided the Hotfix mentioned under KB : 2276255.

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply