3
Vote

Duplicates in Dimension tables when many SCDC controls run in Parallel

description

We have six packages that all have SCDC controls running in parallel they create duplicate row(s) in dimension tables, When i create a unique index on the Business Key columns the SCDC control fails with unique key constraint violation.
 
However when i change the packages to run in sequence this issue is resolved.
We are using "Dimensional Merge Slowly Changing Dimension Transformation V1.6 for SSIS 2008 X86"
 
did anyone face a similar situation.

comments

jantje_20 wrote Feb 20, 2012 at 6:02 AM

we run into the same problem since a couple of weeks ago. The months before the 3 packages were running fine in parallel. Last two weeks i've been looking to solve this problem, but I can't find a solution, except running the packages in parallel.
It's odd though, it's always the same package that keeps failing, and it's only failing in 20% of the time.
We're using version 1.5 of the component on a 64bit windows/sql 2008 server

This is the error i get:


SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Description: "The statement has been terminated.".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Description: "Violation of PRIMARY KEY constraint 'PK_Dim_Table1'. Cannot insert duplicate key in object 'dbo.Dim_Table1'.".


SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "input "OLE DB Destination Input" (12478)" failed because error code 0xC020907B occurred, and the error row disposition on "input "OLE DB Destination Input" (12478)" specifies failure on error. An error occurred on the specified object of the specified component. There may be error messages posted before this with more information about the failure.


SSIS Error Code DTS_E_PROCESSINPUTFAILED. The ProcessInput method on component "Insert Destination" (12465) failed with error code 0xC0209029 while processing input "OLE DB Destination Input" (12478). 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.

jantje_20 wrote Mar 6, 2012 at 11:11 AM

Hereby an update: The problem wasn't caused by running several packages in parallel. The problem, in my case, was caused by duplicate rows from the source.