Ensuring Azure Synapse Pipeline Success with Set Variable
Azure Data Factory & Synapse Analytics Pipelines
You have the Azure Synapse Analytics pipeline shown in the following exhibit. You need to add a set variable activity to the pipeline to ensure that after the pipeline’s completion, the status of the pipeline is always successful. What should you configure for the set variable activity? -
a skipped dependency on the Upon Failure activity
a skipped dependency on the Upon Success activity Source Reference Answer
a success dependency on the Business Activity That Fails activity
a failure dependency on the Upon Failure activity
Community Votes
B
100%
100% of anonymous learners picked answer B.
Votes are pick records left by other test-takers — they are not the verified answer.
Community Insight
Tests knowledge of error handling patterns in ADF/Synapse pipelines, specifically how unhandled failure branches cause overall pipeline failure unless resolved.
Configure a skipped dependency on the 'Upon Success' activity to guarantee pipeline success. Community consensus confirms this pattern handles errors gracefully by ensuring at least one successful terminal activity exists.
Option D is often chosen because it seems intuitive to handle failures directly; however, without a corresponding success path or handled termination, the pipeline may still report failure if the error branch isn't fully consumed by a success outcome.
To me the answer is not complete. If only a Skipped dependency on "Upon Success" is used, the pipeline may still fail if "Upon Failure" is an unhandled terminal activity. Since ADF determines the pipeline’s final status based on all unhandled leaf activities, adding a Completion dependency on "Upon Failure" ensures that a final successfully executed activity is present, guaranteeing that the pipeline always ends in Success. I guess B is the most accurate but not completely correct.
Azure_2023👍 4Selected: B
In this approach, customer defines the business logic, and defines both the Upon Failure path, and Upon Success path, with a dummy Upon Skipped activity attached. This approach renders pipeline succeeds, if Upon Failure path succeeds.
jongert👍 3Selected: B
Should be B, creating an 'Do If Skip Else' statement by adding a skipped dependency to the success path means that the pipeline is always succeeded.
Comments & Corrections
No comments yet — spotted an error or have a note? Share it below.
Log in to comment, report an error, or add a note about this question.
Expert Analysis
Why the Answer Is Correct
Adding a 'Skipped' dependency from the 'Upon Failure' activity to the 'Set Variable' (or any final activity) ensures that even if the main logic fails and triggers the error path, the execution flow continues to a terminal activity that can be configured to succeed. This effectively masks the internal business logic failure from the pipeline's overall status view.
Why the Other Options Are Wrong
Option A suggests skipping the success path, which doesn't help if the failure path is taken. Option C implies a hard dependency on a failing activity, which would propagate failure. Option D handles the failure but might leave the pipeline in a failed state if no subsequent success-oriented terminal activity is reached or configured properly.
Community Comment Notes
Comment [4] highlights a critical nuance: simply having an 'Upon Failure' path isn't enough; you must ensure the final leaf activity succeeds. Comments [2] and [3] reinforce that attaching a skipped dependency to the success path (or ensuring the error path leads to a success) guarantees the pipeline returns a 'Succeeded' status.