@Karthik Eetur Welcome to Microsoft Q&A forum and thanks for reaching out here.
When Orchestrator Pipeline encountered unexpected error and failed for the given folder (Incremental folder 1). ThenDataverseToSQLPipelineProcessingLog has entry of 0 (failure) for the failed folder. Then subsequent folders (eg: Incremental folder 2) will be marked as 3 (skipped) and not as successful (1). As the previous folder are not successful (status code <> 1), hence all the subsequent folders will be skipped (Status code = 3).
To avoid this skipping folder loop, you may follow below resolution steps suggested by product team:
- Identify & resolve the root cause of pipeline failure.
- Manually run the
DataverseToSQLpipeline for the failed folder. - After successful execution of manual run, update the corresponding row in
DataverseToSQLPipelineProcessingLogto1 (success). - Chronologically, sequentially & manually process the subsequent
skipped (3) foldersand manually update theDataverseToSQLPipelineProcessingLogStatuscolumn of corresponding rows to1 (success). - Once the failed folder & all the skipped folders are marked as successful, DataverseToSQL_Orchestrator pipeline will automatically process the next folder in next trigger.
You may have question that there are several skipped folders and manually executing them to updating DataverseToSQLPipelineProcessingLog is time consuming and error prone. Is there any better approach?
Recommendation for Automated reprocessing:
Yes, in that case to avoid manual effort, please consider having new pipeline which:
- Retrieves the skipped folder chronologically.
- Executes the
DataverseToSQLpipeline sequentially. - Updates Status column of
DataverseToSQLPipelineProcessingLogrows to1 (success). Below is sample view of the pipeline looks like for processing skipped folders:
NOTE: To avoid the execution time overlapping, it is necessary to set the concurrency = 1 for your orchestrator pipeline, that way only one execution will be in progress until completed and the subsequent pipeline runs will be queued and executed in the chronological order. Ensuring that Concurrency setting of Orchestrator pipeline is 1 will avoid this scenario in future.
I would also recommend going through this thread where I had detailed discussion with another user on this implementation: Copy Dataverse data into Azure SQL using Synapse Link not running the DaterverseToSQL step
Hope this info helps.
Please don’t forget to Accept Answer and Yes for "was this answer helpful" wherever the information provided helps you, this can be beneficial to other community members.