Conversation
The sensor's exclusivity check moved to Dag parse time and now treats an empty string as a provided value, so a pairing that ran the statement in the released 7.19.0 fails at parse time instead. The note was asked for while apache#70831 was in review and the PR merged before it landed, leaving users upgrading past 7.19.0 with no explanation of the failure.
Contributor
Author
|
@potiuk this is the changelog note from your review of #70831, placed where the file's header comment asks for it. The wording is yours, unchanged. Drafted-by: Claude Code (Opus 5); reviewed by @moomindani before posting |
eladkal
approved these changes
Sep 9, 2026
imrichardwu
pushed a commit
to imrichardwu/airflow
that referenced
this pull request
Sep 11, 2026
…pache#72761) The sensor's exclusivity check moved to Dag parse time and now treats an empty string as a provided value, so a pairing that ran the statement in the released 7.19.0 fails at parse time instead. The note was asked for while apache#70831 was in review and the PR merged before it landed, leaving users upgrading past 7.19.0 with no explanation of the failure.
xvega
pushed a commit
to xvega/airflow
that referenced
this pull request
Sep 13, 2026
…pache#72761) The sensor's exclusivity check moved to Dag parse time and now treats an empty string as a provided value, so a pairing that ran the statement in the released 7.19.0 fails at parse time instead. The note was asked for while apache#70831 was in review and the PR merged before it landed, leaving users upgrading past 7.19.0 with no explanation of the failure.
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.
#70831movedDatabricksSQLStatementsSensor's exclusivity check fromexecute()to__init__and changed it from a truthiness test tois not None. That is a behaviour change against a released version, becauseproviders-databricks/7.19.0(tagged 2026-08-19) already contains #70340 and so ships theexecute()-time truthiness check:statement="SELECT 1"withstatement_id=""runs the statement in 7.19.0, and is a Dag import error now.statement_idtemplate that renders toNoneunderrender_template_as_native_obj=True— it is a non-Nonestring at construction time, so the pair is rejected at parse time.ValueError, so anexcept AirflowExceptionaround them stops matching.The tightening itself is sanctioned by #70503 and is not in question here. The note explaining it to users was requested during the review of #70831 but did not land before the merge, so the
Changelogheader in this provider still has nothing under it.The wording is the text written in that review, placed where the file's own header comment asks for it (just below
Changelog, above the topmost version), in the same shape as theComprehendCreateDocumentClassifierOperatorwarning at the top of the amazon changelog.I verified both halves before writing it:
providers-databricks/7.19.0's sensor raisesAirflowExceptionfromexecute()underif self.statement and self.statement_id, andmain's raisesValueErrorfrom__init__underif statement is not None and statement_id is not None. Providers take no newsfragment, so the changelog is the only place this can be said.check-changelog-formatpasses.related: #70831
Was generative AI tooling used to co-author this PR?
Generated-by: Claude Code (Opus 5) following the guidelines