Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Asset backfill fails to check for complete status of runs without output #26937

Open
Zan-L opened this issue Jan 8, 2025 · 2 comments
Open
Labels
area: backfill Related to Backills type: bug Something isn't working

Comments

@Zan-L
Copy link

Zan-L commented Jan 8, 2025

What's the issue?

The current logic for determining whether a backfill has completed is flawed for assets with optional output, because only materialized and failed runs are considered complete:

return (
(
self.materialized_subset | self.failed_and_downstream_subset
).num_partitions_and_non_partitioned_assets
== self.target_subset.num_partitions_and_non_partitioned_assets
)

This issue has two consequences:

  1. Backfills are stuck in in progress from the UI
  2. Automation Condition backfill_in_progress() evaluates to true and blocks downstream automation

What did you expect to happen?

Change the logic from getting all that is materialized to all that has RUN_SUCCESS events for this function:

def get_asset_backfill_iteration_materialized_partitions(

How to reproduce?

No response

Dagster version

1.9.6

Deployment type

None

Deployment details

No response

Additional information

No response

Message from the maintainers

Impacted by this issue? Give it a 👍! We factor engagement into prioritization.

@Zan-L Zan-L added the type: bug Something isn't working label Jan 8, 2025
@garethbrickman garethbrickman added the area: backfill Related to Backills label Jan 8, 2025
@stigmarl
Copy link
Contributor

I've been seeing something similar for a observable source using that is configured with an automation condition and a MultiPartitionKey where the output is of type DataVersionsByPartition. Each observation creates a backfill which never completes, even though the underlying runs have finished. This causes the Runs page to be filled with these backfills, since we want to observe every hour. Could this be related somehow? We're on Dagster 1.9.6, and didn't experience this issue before upgrading.

@Zan-L
Copy link
Author

Zan-L commented Jan 10, 2025

@stigmarl Yes, because observable source assets don't return output, either.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: backfill Related to Backills type: bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants