This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 7934a6953a0 `issue-59385`: Removing unneeded call the
`SnowflakeSqlApiHook` (#59470)
7934a6953a0 is described below
commit 7934a6953a09d744897ddd3bda3b88fe5ad818bd
Author: Jake Roach <[email protected]>
AuthorDate: Tue Dec 16 11:03:46 2025 -0500
`issue-59385`: Removing unneeded call the `SnowflakeSqlApiHook` (#59470)
* issue-59385: Removing unneeded call the SnowflakeSqlApiHook
* issue-59385: Updating Hook instantiating in proper place
---
.../snowflake/triggers/snowflake_trigger.py | 21 +++++++++++++--------
1 file changed, 13 insertions(+), 8 deletions(-)
diff --git
a/providers/snowflake/src/airflow/providers/snowflake/triggers/snowflake_trigger.py
b/providers/snowflake/src/airflow/providers/snowflake/triggers/snowflake_trigger.py
index a7aa8f3ca82..e460ea7840c 100644
---
a/providers/snowflake/src/airflow/providers/snowflake/triggers/snowflake_trigger.py
+++
b/providers/snowflake/src/airflow/providers/snowflake/triggers/snowflake_trigger.py
@@ -68,15 +68,16 @@ class SnowflakeSqlApiTrigger(BaseTrigger):
async def run(self) -> AsyncIterator[TriggerEvent]:
"""Wait for the query the snowflake query to complete."""
- SnowflakeSqlApiHook(
+ hook = SnowflakeSqlApiHook(
self.snowflake_conn_id,
self.token_life_time,
self.token_renewal_delta,
)
+
try:
for query_id in self.query_ids:
while True:
- statement_status = await self.get_query_status(query_id)
+ statement_status = await self.get_query_status(query_id,
hook)
if statement_status["status"] not in ["running"]:
break
await asyncio.sleep(self.poll_interval)
@@ -92,13 +93,17 @@ class SnowflakeSqlApiTrigger(BaseTrigger):
except Exception as e:
yield TriggerEvent({"status": "error", "message": str(e)})
- async def get_query_status(self, query_id: str) -> dict[str, Any]:
+ async def get_query_status(
+ self, query_id: str, hook: SnowflakeSqlApiHook | None = None
+ ) -> dict[str, Any]:
"""Return True if the SQL query is still running otherwise return
False."""
- hook = SnowflakeSqlApiHook(
- self.snowflake_conn_id,
- self.token_life_time,
- self.token_renewal_delta,
- )
+ if not hook:
+ hook = SnowflakeSqlApiHook(
+ self.snowflake_conn_id,
+ self.token_life_time,
+ self.token_renewal_delta,
+ )
+
return await hook.get_sql_api_query_status_async(query_id)
def _set_context(self, context):