refactor: Backfill materialized columns by column reference instead of property #26742
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
Some properties will have multiple columns associated with them during the transition period when rematerializing columns as nullable, so simply providing a property source column and property name will no longer be specific enough to identify a particular column that needs to be backfilled.
More context available in #26651.
Changes
backfill_materialized_columns
takeIterable[MaterializedColumn]
instead oflist[tuple[PropertyName, TableColumn]]
and update all relevant call sites.materialize
to return aMaterializedColumn
instead ofColumnName | None
to get rid of some annoying workarounds to appease the type checker.Does this work well for both Cloud and self-hosted?
N/A
How did you test this code?
Updated tests.