The error is getting caught but it NOT being collected because when I interrogate the Errors property on the process I get nothing even though the error is logged to the console. I thought it was a threading issue with a race condition so I changed the PipelineExecutor to be single threaded and it still doesn't see any errors.
Here is my full stack trace...
System.InvalidOperationException: Column 'StratRunId' does not allow DBNull.Value.
at System.Data.SqlClient.SqlBulkCopy.ConvertValue(Object value, _SqlMetaData metadata)
at System.Data.SqlClient.SqlBulkCopy.WriteToServerInternal()
at System.Data.SqlClient.SqlBulkCopy.WriteRowSourceToServer(Int32 columnCount)
at System.Data.SqlClient.SqlBulkCopy.WriteToServer(IDataReader reader)
at Rhino.Etl.Core.Operations.SqlBulkInsertOperation.<Execute>d__0.MoveNext()
at Rhino.Etl.Core.Enumerables.SingleRowEventRaisingEnumerator.MoveNext()
at Rhino.Etl.Core.Enumerables.EventRaisingEnumerator.MoveNext()
at Rhino.Etl.Core.Pipelines.ThreadPoolPipelineExecuter.<>c__DisplayClass1.<DecorateEnumerableForExecution>b__0(Object )
9/6/2012 9:08:04 AM [TRACE] Rhino.Etl.Core.Pipelines.ThreadPoolPipelineExecuter - Completed process LocationEtlProcess in 00:00:00.4080408