SQL 2016 SP2.. 32GB memory, 28GB assigned to SQL Server
Im getting following error when running SSIS package.
Event 2004, Ressource-Exhaustion-Detector
Windows successfully diagnosed a low virtual memory condition.
The following programs consumed the most virtual memory: ISServerExec.exe (7008) consumed 38500085760 bytes, ISServerExec.exe (11176) consumed 2817409024 bytes, and sqlservr.exe (2460) consumed 623489024 bytes.
----
The error comes very quickly within seconds, i am monitoring through task/resource monitor and through perfmon.
My package is truncating tables and re-populating, but before that there is a VBscript called start monitoring that does the following
' Microsoft SQL Server Integration Services Script Task
' Write scripts using Microsoft Visual Basic
' The ScriptMain class is the entry point of the Script Task.
Imports System
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Runtime
<Microsoft.SqlServer.Dts.Tasks.ScriptTask.SSISScriptTaskEntryPointAttribute> _
<System.CLSCompliantAttribute(False)> _
Partial Public Class ScriptMain
Inherits Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase
Enum ScriptResults
Success = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Success
Failure = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure
End Enum
' The execution engine calls this method when the task executes.
' To access the object model, use the Dts object. Connections, variables, events,
' and logging features are available as static members of the Dts class.
' Before returning from this method, set the value of Dts.TaskResult to indicate success or failure.
'
' To open Code and Text Editor Help, press F1.
' To open Object Browser, press Ctrl+Alt+J.
Public Sub Main()
'v_DBServer_Log_Name,v_job_id
'v_job_execution_id
Dim monitor As SDIS.SSIS.Library.Monitoring = New SDIS.SSIS.Library.Monitoring()
Dts.Variables("v_job_execution_id").Value = monitor.StartJob(Dts.Variables("v_DBServer_Log_Name").Value.ToString(), _
CType(Dts.Variables("v_job_id").Value, Integer))
'
' Add your code here
'
Dts.TaskResult = ScriptResults.Success
End Sub
End Class
Could it be the vbscript thats maxing out the memory? how can i test or prove it is or isnt?
I am running sp_whoisactive and i can see the truncate/re-populates are working and not taking up alot of memory, but all i can see is ISServerExec.exe rising very very fast and job failing within 15 seconds or so..
thanks
ilikefondue