feat(python): reading/writing transaction identifiers in python #2942
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.
Description
We'd like to read/write the delta transaction identifiers for stream processing. It seems that this is currently available to through rust but not python. This PR adds the following to the python API:
app_transactions
field inCommitProperties
, which is a list of theTransaction
class (PyTransaction
in rust)DeltaTable.transaction_versions
for accessing the latest transaction of a delta table, which returns a dictionary of app id ->Transaction
Would like some feedback on the naming/API. I'm not sure which is the correct terminology to use - "app transaction" vs "transaction version" vs "transaction identifier"? The delta protocol refers to it as transaction identifiers.