Memory Dump - Sample

Memory Dump - Sample

  • Comments 1

In my last post I mentioned the enhanced memory dumping we've added to SQL Server 2008. Along with the dump file, we create a text file that has additional information that will help in debugging the issue. I thought I'd include a sample of it, here.

System Info

# SSIS Textual Dump taken at 8/29/2007 1:12:47 PM
# PID 4740, Command Line: dtexec  /f \users\xxxxx\packages\agg.dtsx
# OS major=6 minor=0 build=6000
# Running on 2 amd64 processors under WOW64
# Memory: 57% in use. Physical: 864M/2044M  Paging: 1938M/4095M (avail/total)

Loaded Modules

# Loaded Module: c:\bb\Sql\DTS\src\bin\debug\i386\DTExec.exe (10.0.1067.3)
# Loaded Module: C:\Windows\SysWOW64\ntdll.dll (6.0.6000.16386)
# Loaded Module: C:\Windows\syswow64\kernel32.dll (6.0.6000.16386)
# Loaded Module: C:\Windows\WinSxS\x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_24c8a196583ff03b\MSVCR80D.dll (8.0.50727.762)
# Loaded Module: C:\Windows\syswow64\msvcrt.dll (6.1.8638.16386)
# Loaded Module: C:\Windows\syswow64\ADVAPI32.dll (6.0.6000.16386)
# Loaded Module: C:\Windows\syswow64\RPCRT4.dll (6.0.6000.16386)
# Loaded Module: C:\Windows\syswow64\Secur32.dll (6.0.6000.16386)
# Loaded Module: C:\Windows\syswow64\USER32.dll (6.0.6000.16438)
# Loaded Module: C:\Windows\syswow64\GDI32.dll (6.0.6000.16386)
# Loaded Module: C:\Windows\syswow64\OLEAUT32.dll (6.0.6000.16386)
# Loaded Module: C:\Windows\syswow64\ole32.dll (6.0.6000.16386)
# Loaded Module: c:\bb\Sql\DTS\src\bin\debug\i386\SqlTDiagN.dll (9.0.2015.0)
# Loaded Module: C:\Windows\WinSxS\x86_microsoft.vc80.debugcrt_1fc8b3b9a1e18e3b_8.0.50727.762_none_24c8a196583ff03b\MSVCP80D.dll (8.0.50727.762)

Events

[D:0]<<<CRingBuffer<TRingBufferRecord>>>> ( @ 22923678 )
[M:1]   Ring buffer entry: (*pRecord)
[D:2]      <<<CRingBufferLogging::RingBufferLoggingRecord>>> ( @ 029760D0 )
[E:3]         Time Stamp: 2007-08-29 13:12:40.891      (szTimeStamp)
[E:3]         Thread ID: 4240     (ThreadID)
[E:3]         Event Name: PackageStart   (EventName)
[E:3]         Source Name: (SourceName)
[E:3]         Source ID:   (SourceID)
[E:3]         Execution ID:       (ExecutionGUID)
[E:3]         Data Code: 0 (DataCode)
[E:3]         Description: Beginning of package execution. (MessageText)
[M:1]   Ring buffer entry: (*pRecord)
[D:2]      <<<CRingBufferLogging::RingBufferLoggingRecord>>> ( @ 02976A78 )
[E:3]         Time Stamp: 2007-08-29 13:12:40.895      (szTimeStamp)
[E:3]         Thread ID: 4240     (ThreadID)
[E:3]         Event Name: Diagnostic     (EventName)
[E:3]         Source Name: (SourceName)
[E:3]         Source ID:   (SourceID)
[E:3]         Execution ID:       (ExecutionGUID)
[E:3]         Data Code: 0 (DataCode)
[E:3]         Description: Based on the system configuration, the maximum concurrent executables are set to 4. (MessageText)
[M:1]   Ring buffer entry: (*pRecord)
[D:2]      <<<CRingBufferLogging::RingBufferLoggingRecord>>> ( @ 0297AE10 )
[E:3]         Time Stamp: 2007-08-29 13:12:40.935      (szTimeStamp)
[E:3]         Thread ID: 5692     (ThreadID)
[E:3]         Event Name: Diagnostic     (EventName)
[E:3]         Source Name: LocalHost.master     (SourceName)
[E:3]         Source ID: {FA7F8453-35E3-4551-ADBD-AA542EFF815A}      (SourceID)
[E:3]         Execution ID:       (ExecutionGUID)
[E:3]         Data Code: 0 (DataCode)
[E:3]         Description: ExternalRequest_pre: The object is ready to make the following external request: 'IDataInitialize::GetDataSource'.      (MessageText)
[M:1]   Ring buffer entry: (*pRecord)
[D:2]      <<<CRingBufferLogging::RingBufferLoggingRecord>>> ( @ 0297B7B8 )
[E:3]         Time Stamp: 2007-08-29 13:12:40.940      (szTimeStamp)
[E:3]         Thread ID: 5692     (ThreadID)
[E:3]         Event Name: Diagnostic     (EventName)
[E:3]         Source Name: LocalHost.master     (SourceName)
[E:3]         Source ID: {FA7F8453-35E3-4551-ADBD-AA542EFF815A}      (SourceID)
[E:3]         Execution ID:       (ExecutionGUID)
[E:3]         Data Code: 0 (DataCode)
[E:3]         Description: ExternalRequest_post: 'IDataInitialize::GetDataSource succeeded'. The external request has completed.     (MessageText)

Runtime Information about the Package

[D:0]<<<CPackage>>> ( @ 00AE9FF8 )
[M:1]   Package format version: 2 (sm_dwCurrentPackageFormatVersion @ 229153B0)
[M:1]   Max concurrent exec: -1   (m_lMaxConcurrentExecutables @ 00AEA30C)
[M:1]   Package priority: 0 (m_lPackagePriorityClass @ 00AEA310)
[M:1]   Major Version: 1   (m_lVersionMajor @ 00AEA314)
[M:1]   Minor Version: 0   (m_lVersionMinor @ 00AEA318)
[M:1]   Build Version: 25  (m_lVersionBuild @ 00AEA31C)
[M:1]   Version GUID: {18426A5B-810C-4C58-B0F5-3B568A863D5C}  (m_bstrVersionGUID.m_str @ 00AEA320)
[M:1]   Machine Name: xxxxx1      (m_bstrMachineName.m_str @ 00AEA324)
[M:1]   User Name: REDMOND\xxxxx  (m_bstrUserName.m_str @ 00AEA328)
[M:1]   Suppress config warning?: 0      (m_vbSuppressConfigWarns @ 00AEA330)
[M:1]   Propagate Errors and Warnings?: 1       (m_bPropagateErrorsAndWarnings @ 00AEA332)
[M:1]   Enable configuration?: 0  (m_vbEnableConfigurations @ 00AEA33C)
[M:1]   Package type: 5    (m_PackageType @ 00AEA340)
[M:1]   Interactive mode?: 0      (m_vbInteractiveMode @ 00AEA344)

Variables

Current information about all of the variables in your package and the current state of the variable dispenser.

[M:1]   Variables:   (*m_pVariables)
[D:2]      <<<CVariables>>> ( @ 00AEDBC0 )
[M:3]         Dispensed?: 0 (m_bDispensed @ 00AEDC54)
[M:3]         Unlocked?: 0 (m_bUnlocked @ 00AEDC55)
[M:3]         Locked for read: 0  (m_dwLockedForRead @ 00AEDC5C)
[M:3]         Locked for write: 0 (m_dwLockedForWrite @ 00AEDC64)
[P:3]         Variable Dispenser: 00000000      (m_pVariableDispenser @ 00AEDC68)
[P:3]         Super parent variables: 00000000  (m_spSuperParentVariables.p @ 00AEDC4C)
[M:3]         Variables    (this)
[E:4]            Index: 0  (vIndex.lVal)
[E:4]            Read only?: 0    (vbValue)
[E:4]            Namespace: User  (bstrValue.m_str)
[E:4]            Data type: 3     (iValue)
[E:4]            Qualified name: User::a1       (bstrValue.m_str)
[E:4]            Raise changed event?: 0 (vbValue)
[E:4]            Evaluate as expression?: 0     (vbValue)
[E:4]            System variable?: 0     (vbValue)
[E:4]            Index: 1  (vIndex.lVal)
[E:4]            Read only?: 0    (vbValue)
[E:4]            Namespace: User  (bstrValue.m_str)
[E:4]            Data type: 3     (iValue)
[E:4]            Qualified name: User::a2       (bstrValue.m_str)
[E:4]            Raise changed event?: 0 (vbValue)
[E:4]            Evaluate as expression?: 0     (vbValue)
[E:4]            System variable?: 0     (vbValue)

Execution Graph

Detailed information about the runtime's current execution graph.

[M:1]   Executables (m_pExecutables)
[E:2]      Index: 0  (i)
[E:2]      Executable ID: {5BEA31F6-D554-4058-9BD7-501B5DBC76C5}     (bstrID.m_str)
[E:2]      Executable Name: Data Flow Task      (bstrName.m_str)
[E:2]      Index: 1  (i)
[E:2]      Executable ID: {0701823A-18E9-40F5-B9CB-B09B7FC08828}     (bstrID.m_str)
[E:2]      Executable Name: Execute SQL Task    (bstrName.m_str)
[M:1]   Executable Graph: (m_graph)
[D:2]      <<<CGenericSequenceImpl::CInternalExecutableGraph>>> ( @ 00AEA264 )
[M:3]         Graph Executables   (m_executables)
[E:4]            Index: 0  (index)
[M:4]            Graph Executable:       (*(itr->second))
[D:5]               <<<CGenericSequenceImpl::CGraphExecutable>>> ( @ 00CCD678 )
[M:6]                  And Constrainted?: 1     (m_isAndConstrained @ 00CCD6B0)
[M:6]                  Executable (m_pExecutables)
[E:7]                     Executable ID: {5BEA31F6-D554-4058-9BD7-501B5DBC76C5}   (bstrID.m_str)
[E:7]                     Executable Name: Data Flow Task     (bstrName.m_str)
[M:6]                  Predecessors      (m_predecessors)
[M:6]                  Successors (m_successors)
[E:4]            Index: 1  (index)
[M:4]            Graph Executable:       (*(itr->second))
[D:5]               <<<CGenericSequenceImpl::CGraphExecutable>>> ( @ 00CCD7C8 )
[M:6]                  And Constrainted?: 1     (m_isAndConstrained @ 00CCD800)
[M:6]                  Executable (m_pExecutables)
[E:7]                     Executable ID: {0701823A-18E9-40F5-B9CB-B09B7FC08828}   (bstrID.m_str)
[E:7]                     Executable Name: Execute SQL Task   (bstrName.m_str)
[M:6]                  Predecessors      (m_predecessors)
[M:6]                  Successors (m_successors)

Pipeline Information

Info about each Data Flow in the package, what it's currently doing, and what its plan is.

[D:0]<<<CMainPipe>>> ( @ 00B25BA0 )
[M:1]   Read-only pipe: 1  (m_bIsReadOnly @ 00B25D70)
[M:1]   Offline mode: 0    (m_bOfflineValidate @ 00B25D71)
[P:1]   Buffer manager: 00B61668  (m_pBufferManager @ 00B25D8C)
[M:1]   Default new rows in buffer: 250  (m_lDefaultBufferMaxRows @ 00B25D90)
[M:1]   Default buffer size: 10485760    (m_lDefaultBufferSize @ 00B25D94)
[M:1]   Optimized mode: 1  (m_bRunInOptimizedMode @ 00B25DA0)
[M:1]   Threads: 10  (m_lEngineThreads @ 00B25DA4)
[M:1]   Backpressure Amount: 5    (m_lMaxPathBuffers @ 00B25DA8)
[M:1]   Interactive mode: 0 (m_vbInteractiveMode @ 00B25DC4)
[M:1]   Scheduler:   (*m_pScheduler)
[D:2]      <<<CScheduler>>> ( @ 00B62490 )
[M:3]         Number of threads: 10      (m_lNumThreads @ 00B625C0)
[M:3]         Next thread: -842150451    (m_lNextThread @ 00B625C4)
[M:3]         Initialization Error: 0    (m_hrInit @ 00B625CC)
[M:3]         Swapping now: 1     (m_bSwap @ 00B625DC)
[M:3]         Cancel requested: 0 (m_bCancel @ 00B625DD)
[M:3]         Last step's error: 0 (m_hrEIResult @ 00B625E0)
[M:3]         Thread #0 (m_arypThreads[0] @ 00B64D54)
[D:4]            <<<CSchedulerThread>>> ( @ 00B64D54 )
[M:5]               Current work: (*m_pEIWork)
[D:6]                  <<<CSwapExecutionItem>>> ( @ 00B5BA88 )
[M:7]                     Completed: 0   (m_bCompleted @ 00B5BA90)
[M:7]                     Stop Requested: 0     (m_bStop @ 00B5BA91)
[M:3]         Thread #1 (m_arypThreads[1] @ 00B64DC8)
[D:4]            <<<CSchedulerThread>>> ( @ 00B64DC8 )
[M:5]               Current work: (*m_pEIWork)
[D:6]                  <<<COutputExecutionItem>>> ( @ 00B5B9B0 )
[M:7]                     Current Step: (*m_pesStep)
[D:8]                        <<<SExecutionStep>>> ( @ 00B5AEB8 )
[P:9]                           Start Point: 00B61770  (pStartPoint @ 00B5AEB8)
[M:9]                           Component:      (*(stepPO.m_pComponent))
[D:10]                              <<<CComponent>>> ( @ 00B2FE50 )
[M:11]                                 ID: 1    (m_lID @ 00B2FE54)
[E:11]                                 Name: Flat File Source ((wchar_t*)(BSTR)m_bstrName)
[E:11]                                 Description: Flat File Source ((wchar_t*)(BSTR)m_bstrDescription)
[M:11]                                 Locale: 1033    (m_lLocaleID @ 00B2FE88)
[M:9]                           Output ID #0: 2 (stepPO.m_arylOutputIDs[0] @ 00CCB610)

---

Easy to follow, right?

Well, maybe certain users will be able to get something out of this, but it's really meant to be used by customer support and the SSIS dev team. It's been working well so far, and we can keep adding to the information as we hit hard to solve cases.

Leave a Comment
  • Please add 6 and 7 and type the answer here:
  • Post