Spark: Add procedure to publish WAP changes using wap.id #4715
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.
While the WAP workflow enables users to write data via SQL using a
wap_id, there's a lack in usability when applying those changes written to the table during the Publish step of the workflow. The user needs to figure out thesnapshot-idprogrammatically to cherry-pick the changes. Ideally, we should have all steps of the WAP workflow available via SQL, since Iceberg has thewap-id => snapshot-idmapping in its own metadata.This PR proposes a SQL procedure to cherry-pick the changes created with a
wap-id. Functionally, it works the same as the cherry-pick procedure, but receives awap-idas argument instead of asnapshot-id. This would make the Write and Publish parts of WAP available via SQL. The procedure name proposed ispublish_changesbut I'm open to suggestions if another name would fit better.Thanks.
BTW - I considered extending the current
cherry-pickprocedure but I figured the implementation wouldn't look that much different nor we'd end up with less code since there's a few things that'd need to be overwritten from an already simple procedure; so mostly it would've been coupling both implementations. Open to suggestions.