Differential D8684 Diff 40807 examples/docs_snippets/docs_snippets/guides/dagster/reexecution/reexecution_api.py
Changeset View
Changeset View
Standalone View
Standalone View
examples/docs_snippets/docs_snippets/guides/dagster/reexecution/reexecution_api.py
from dagster import DagsterInstance, execute_pipeline, reexecute_pipeline | from dagster import DagsterInstance, execute_pipeline, reexecute_pipeline | ||||
from reexecution.unreliable_pipeline import unreliable_pipeline | from reexecution.unreliable_pipeline import unreliable_pipeline | ||||
def reexecution(): | def reexecution(): | ||||
instance = DagsterInstance.ephemeral() | instance = DagsterInstance.ephemeral() | ||||
# Initial execution | # Initial execution | ||||
pipeline_result_full = execute_pipeline(unreliable_pipeline, instance=instance) | pipeline_result_full = execute_pipeline( | ||||
unreliable_pipeline, instance=instance | |||||
) | |||||
if not pipeline_result_full.success: | if not pipeline_result_full.success: | ||||
# Re-execution: Entire pipeline | # Re-execution: Entire pipeline | ||||
reexecution_result_full = reexecute_pipeline( | reexecution_result_full = reexecute_pipeline( | ||||
unreliable_pipeline, | unreliable_pipeline, | ||||
parent_run_id=pipeline_result_full.run_id, | parent_run_id=pipeline_result_full.run_id, | ||||
instance=instance, | instance=instance, | ||||
) | ) | ||||
# end_initial_execution_marker | # end_initial_execution_marker | ||||
instance = DagsterInstance.ephemeral() | instance = DagsterInstance.ephemeral() | ||||
pipeline_result_full = execute_pipeline(unreliable_pipeline, instance=instance) | pipeline_result_full = execute_pipeline( | ||||
unreliable_pipeline, instance=instance | |||||
) | |||||
# start_partial_execution_marker | # start_partial_execution_marker | ||||
# Re-execution: Starting with the "unreliable" solid and all its descendents | # Re-execution: Starting with the "unreliable" solid and all its descendents | ||||
reexecution_result_specific_selection = reexecute_pipeline( | reexecution_result_specific_selection = reexecute_pipeline( | ||||
unreliable_pipeline, | unreliable_pipeline, | ||||
parent_run_id=pipeline_result_full.run_id, | parent_run_id=pipeline_result_full.run_id, | ||||
instance=instance, | instance=instance, | ||||
solid_selection=["unreliable+*"], | solid_selection=["unreliable+*"], | ||||
) | ) | ||||
# end_partial_execution_marker | # end_partial_execution_marker |