title: ValidateExternalMetadata property, what exactly does this do?
body: <p>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".</p>
  
  <p>Two things solve the problem:</p>
  
  <ol>
  <li>Use a clustered index instead of non-clustered</li>
  <li>Set ValidateExternalMetadata property to False</li>
  </ol>
  
  <p>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,</p>
  
  <ol>
  <li>What exactly are the things that happen when you turn the property false, apart from checking column meta data?</li>
  <li>Why is non-clustered index causing a validation trouble?</li>
  </ol>
  
  <p>PS: There were no indexes on the table before.</p>