views:

41

answers:

1

I have a package which reads data from a table and based on a column value stores the records in two other tables. Package uses Transaction required property. It was running smooth until recently when I created a non-clustered index on source table to improve performance. The package denies to proceed execution after showing the Progress as "Validation has started".

Two things solve the problem:

  1. Use a clustered index instead of non-clustered
  2. Set ValidateExternalMetadata property to False

I don't have to use both but one out of them and the package runs smooth. I opted for option 1 but I don't understand what is happening under the hood. My questions are,

  1. What exactly are the things that happen when you turn the property false, apart from checking column meta data?
  2. Why is non-clustered index causing a validation trouble?

PS: There were no indexes on the table before.

A: 

This may be the explanation:

http://support.microsoft.com/kb/2253391

The execution of a SQL Server Integration Services (SSIS) package stops responding when you enable DTC transactions for a package in Microsoft SQL Server

ChrisLoris
Thanks Chris. I have seen that but it is not explaining what is happening inside.
Faiz