我对 SSIS 进程有问题(实际上,两个不同的进程会出现同样的问题)。所以,我们正在使用 SSIS 做一些 ETL 工作。我们有商业智能项目,它可以在 Visual Studio 中正常执行。但是,当它部署在服务器上并安排为作业时,它会失败并出现以下错误:
INTRASTAT_Towar:Error: SSIS Error Code
DTS_E_PROCESSINPUTFAILED. The ProcessInput
method on component "Union All 3" (876) failed with error
code 0xC0047020 while processing input "Union All Input
2" (916). The identified component returned an error from
the ProcessInput method. The error is specific to the
component, but the error is fatal and will cause the Data
Flow task to stop running. There may be error messages
posted before this with more information about the failure.
INTRASTAT_Towar:Error: SSIS Error Code
DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput
method on istat_dekl_wynik_poz SELECT returned error
code 0xC02020C4. The component returned a failure
code when the pipeline engine called PrimeOutput(). The
meaning of the failure code is defined by the component,
but the error is fatal and the pipeline stopped executing.
There may be error messages posted before this with
more information about the failure.
INTRASTAT_Towar:Error: The attempt to add a row to the
Data Flow task buffer failed with error code 0xC0047020.**
其他返回的错误类似,有时会出现未指定的错误而不是 0xC0047020。错误只发生在这张表上,它在数据流任务中有很多不同的东西(联合、多播、条件拆分)。大多数其他数据流只有源、目标和转换,它们不会引起任何问题。有人建议我尝试为数据流任务操作 DefaultBufferMaxRows 和 DefaultBufferSize 属性值,但是在做了一些研究之后,我不相信它会解决问题,因为它们目前被设置为默认值。有什么建议么?
原文由 L.J. 发布,翻译遵循 CC BY-SA 4.0 许可协议
注意目标表上的索引——尤其是唯一的索引,因为这会引发一个无法确定问题的错误。