Quantcast
Channel: SQL Server Integration Services forum
Viewing all articles
Browse latest Browse all 24688

ISServerExec.exe consuming all memory and SSIS job failing quickly

$
0
0

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


Viewing all articles
Browse latest Browse all 24688

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>