首页 > 解决方案 > SSISDB 说包正在运行,但它没有

问题描述

我不时遇到 SSIS 问题,我的包似乎死了。执行报告说程序包正在运行,catalog.executions 视图的 end_time 为 NULL,因此 SSISDB 认为程序包正在运行。但是包正在处理的数据库上没有任何活动,服务器上也没有资源使用,所以我很确定包没有运行。此外,catalog.operation_messages 视图中的最后一条消息已超过 12 小时(它只是一条信息性消息,没有报告错误)。

我如何确定这里发生了什么?是否有另一个日志文件可以提供帮助?或者其他方式来追踪正在发生的事情?

我的 SQL 版本是 2014 企业版。

标签: sql-serverssis

解决方案


我想我已经找到了我的问题的答案。Windows 应用程序日志揭示了问题:

SSIS 执行进程无法写入 IS 目录:IEDC-PTF-PSV007:SSISDB 错误详细信息:无法将新消息添加到操作消息表中。:资源池“默认”中的系统内存不足,无法运行此查询.; 在 Microsoft.SqlServer.IntegrationServices.Server.ISServerExec.ISServerHelper.AppendEventMessage(SqlCommand cmd,Int64 operationId,Int32 message_type,DateTimeOffset message_time,Int16 message_source,String message_text,Nullable 1 extendedInfoId,String packageName,String packageLocationType,String packagePathFull,String eventName,String messageSource,字符串 messageSrcId,字符串 subComponentName,字符串 packagePath,字符串 executionPath,UInt32 threadId,Nullable`1 messageCode,Int64& eventMessageId) 在 Microsoft.SqlServer.IntegrationServices.Server.ISServerExec。

因此包无法写入数据库并因此失败,但它似乎仍在运行,因为它无法将状态写回数据库!

我的 SSISDB 已经增长到 200GB,所以我认为这是一个问题。我将减小大小并缩短保留期。


推荐阅读