在DTC事务中登记SSIS包的间歇性故障
我们的软件包随机失败,并显示以下错误消息: SSIS错误代码在DTC事务中登记SSIS包的间歇性故障,ssis,msdtc,Ssis,Msdtc,我们的软件包随机失败,并显示以下错误消息: SSIS错误代码DTS\u E\u OLEDBERROR。发生OLE DB错误。错误代码:0x8004D00A。 COM错误对象信息可用。来源:“[Some Package Name]”错误代码: 0x8004D00A说明:“SSIS运行时未能登记OLE DB连接 在分布式事务中,错误为0x8004D00A“无法在事务中登记” 这种情况并非总是发生,重新运行包通常会成功,因此我认为这不是DTC或网络配置问题。无论我们是从Studio内部还是通过SQL代
DTS\u E\u OLEDBERROR
。发生OLE DB错误。错误代码:0x8004D00A。
COM错误对象信息可用。来源:“[Some Package Name]”错误代码:
0x8004D00A说明:“SSIS运行时未能登记OLE DB连接
在分布式事务中,错误为0x8004D00A“无法在事务中登记”
这种情况并非总是发生,重新运行包通常会成功,因此我认为这不是DTC或网络配置问题。无论我们是从Studio内部还是通过SQL代理作业运行包,都会发生这种情况。在后一种情况下,包运行在它尝试连接的同一SQL Server实例上
我们可以从日志中看到事务是在正确的点启动的,但是几秒钟后,我们得到了失败
在此感谢您的建议
SQL Server详细信息:在Server 2003 64位企业版(3790)上运行的64位企业版(v9.0.3233).服务器运行的是E5345 Xeons,内存为6GB。我们最终找到了答案-控制流中有两个独立的任务正在建立到同一数据库的连接。显然,在某个地方存在某种竞争条件使其失败。添加优先级约束以强制任务串联执行使问题消失。我的包中的所有内容都是串联的,而不是并联/独立的。我仍然会遇到此错误。