Add your experiences and workarounds here. If you have solved this issue, why not help the next person?
I caused this error to occur by using ComponentMetaData.InputCollection[0].GetVirtualInput().VirtualInputColumnCollection.GetVirtualInputColumnByLineageID(lineageID); in the SetUsageType method for a component I was writing. The actual error did not occur until SetUsageType returned. Removing the ComponentMetaData.InputCollection[0].GetVirtualInput() and using the virtualInput argument to SetUsageType fixed the error.
I received this error when executing a custom .NET Component, which loads records into a data table to perform a unique check. The error seems to occur when I am loading a large amount of data into my package (>500,000 rows), so I am attributing it to reaching a memory limit, but I need to do more research to confirm. The error seems to be ocurring when records are being added to the output buffer. The exact error message is logged as:
<Description>Exception from HRESULT: 0xC0047041</Description>
<Source> at Microsoft.SqlServer.Dts.Pipeline.Wrapper.IDTSOutputColumn90.get_Length()</Source>
Once this error is thrown a subsequent Exception from HRESULT: 0xC0047020 error is thrown, indicating that the thread is shut down.
Pipeline HRESULT codes for SQL Server Integration Services. Each code has an individual topic page with the full description and related codes. You can also include any additional information about symptoms, cases and fixes as you find the. Please contribute your findings.