This is an automated email from the ASF dual-hosted git repository.
shahar1 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 e16a0f78cd2 Fix Teradata transfer template field initialization
(#70392)
e16a0f78cd2 is described below
commit e16a0f78cd207546a0119e0c92982de40116503a
Author: Vincent Hsiao <[email protected]>
AuthorDate: Fri Jul 24 23:28:19 2026 +0800
Fix Teradata transfer template field initialization (#70392)
---
.../teradata/transfers/teradata_to_teradata.py | 4 +---
.../teradata/transfers/test_teradata_to_teradata.py | 19 +++++++++++++++++++
.../ci/prek/validate_operators_init_exemptions.txt | 1 -
3 files changed, 20 insertions(+), 4 deletions(-)
diff --git
a/providers/teradata/src/airflow/providers/teradata/transfers/teradata_to_teradata.py
b/providers/teradata/src/airflow/providers/teradata/transfers/teradata_to_teradata.py
index 126146cae36..3fa10082dd8 100644
---
a/providers/teradata/src/airflow/providers/teradata/transfers/teradata_to_teradata.py
+++
b/providers/teradata/src/airflow/providers/teradata/transfers/teradata_to_teradata.py
@@ -64,8 +64,6 @@ class TeradataToTeradataOperator(BaseOperator):
**kwargs,
) -> None:
super().__init__(**kwargs)
- if sql_params is None:
- sql_params = {}
self.dest_teradata_conn_id = dest_teradata_conn_id
self.destination_table = destination_table
self.source_teradata_conn_id = source_teradata_conn_id
@@ -86,7 +84,7 @@ class TeradataToTeradataOperator(BaseOperator):
dest_hook = self.dest_hook
with src_hook.get_conn() as src_conn:
cursor = src_conn.cursor()
- cursor.execute(self.sql, self.sql_params)
+ cursor.execute(self.sql, self.sql_params or {})
target_fields = [field[0] for field in cursor.description]
rows_total = 0
if len(target_fields) != 0:
diff --git
a/providers/teradata/tests/unit/teradata/transfers/test_teradata_to_teradata.py
b/providers/teradata/tests/unit/teradata/transfers/test_teradata_to_teradata.py
index 023ca9e3651..385a12532b7 100644
---
a/providers/teradata/tests/unit/teradata/transfers/test_teradata_to_teradata.py
+++
b/providers/teradata/tests/unit/teradata/transfers/test_teradata_to_teradata.py
@@ -77,6 +77,25 @@ class TestTeradataToTeradataTransfer:
assert hook is op.dest_hook
assert hook.teradata_conn_id == "dest_teradata_conn_id"
+ def test_sql_params_default_is_applied_at_execution(self, mocked_src_hook):
+ op = TeradataToTeradataOperator(
+ task_id="transfer_data",
+ dest_teradata_conn_id=self.dest_teradata_conn_id,
+ destination_table=self.destination_table,
+ source_teradata_conn_id=self.source_teradata_conn_id,
+ sql=self.sql,
+ )
+
+ assert op.sql_params is None
+
+ mock_src_conn =
mocked_src_hook.get_conn.return_value.__enter__.return_value
+ mock_cursor = mock_src_conn.cursor.return_value
+ mock_cursor.description.__iter__.return_value = []
+
+ op.execute({})
+
+ mock_cursor.execute.assert_called_once_with(self.sql, {})
+
def test_execution(self, mocked_src_hook, mocked_dest_hook):
cursor_description = [
["user_id", Decimal, None, 8, 10, 0, False],
diff --git a/scripts/ci/prek/validate_operators_init_exemptions.txt
b/scripts/ci/prek/validate_operators_init_exemptions.txt
index a1c334b20c2..71a13973e4c 100644
--- a/scripts/ci/prek/validate_operators_init_exemptions.txt
+++ b/scripts/ci/prek/validate_operators_init_exemptions.txt
@@ -69,5 +69,4 @@
providers/ssh/src/airflow/providers/ssh/operators/ssh_remote_job.py::SSHRemoteJo
providers/standard/src/airflow/providers/standard/operators/bash.py::BashOperator
providers/standard/src/airflow/providers/standard/operators/trigger_dagrun.py::TriggerDagRunOperator
providers/standard/src/airflow/providers/standard/sensors/date_time.py::DateTimeSensor
-providers/teradata/src/airflow/providers/teradata/transfers/teradata_to_teradata.py::TeradataToTeradataOperator
providers/weaviate/src/airflow/providers/weaviate/operators/weaviate.py::WeaviateIngestOperator