fix BigQueryInsertJobOperator's return value and openlineage extraction in deferrable mode#40457
Merged
potiuk merged 1 commit intoapache:mainfrom Jul 2, 2024
Merged
Conversation
a0c67d2 to
e12c4e0
Compare
shahar1
reviewed
Jun 27, 2024
Contributor
shahar1
left a comment
There was a problem hiding this comment.
Could you please add some tests?
e12c4e0 to
dc21a36
Compare
Contributor
Author
|
Added some tests to check that we indeed re-assign the job_id from the event. @shahar1 |
…on in deferrable mode Signed-off-by: Kacper Muda <mudakacper@gmail.com>
dc21a36 to
1bd08eb
Compare
potiuk
approved these changes
Jul 2, 2024
52 tasks
romsharon98
pushed a commit
to romsharon98/airflow
that referenced
this pull request
Jul 26, 2024
…on in deferrable mode (apache#40457) Signed-off-by: Kacper Muda <mudakacper@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR fixes two things:
Return value of
BigQueryInsertJobOperator'sexecute_complete()(so execution in deferrable mode) will now be an actual BQ job id instead of None. As described in this docs, when deferring:No state will persist, such as local variables or attributes set on self., so assigning value to self.job_id withinexecute()had no effect and was not actually used inexecute_complete().We are re-assigning the job_id in
execute_complete()as an instance attribute, so that we can later use it within OpenLineage method even when in deferrable mode. We are also re-creating any attributes (hook) that may be missing as a result of the state keeping logic mentioned above.^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rstor{issue_number}.significant.rst, in newsfragments.