fat-catTW commented on code in PR #70493:
URL: https://github.com/apache/airflow/pull/70493#discussion_r3684669810
##########
providers/google/src/airflow/providers/google/cloud/transfers/bigquery_to_mssql.py:
##########
@@ -81,15 +81,9 @@ def __init__(
target_table_name = mssql_table
- try:
- _, dataset_id, table_id = source_project_dataset_table.split(".")
- except ValueError:
- raise ValueError(
- f"Could not parse {source_project_dataset_table} as
<project>.<dataset>.<table>"
- ) from None
super().__init__(
target_table_name=target_table_name,
- dataset_table=f"{dataset_id}.{table_id}",
+
dataset_table="__airflow_unrendered_dataset.__airflow_unrendered_table",
Review Comment:
Thanks for the detailed note.
I went with the cleaner base-class fix you suggested.
`BigQueryToSqlBaseOperator` now accepts `dataset_table=None` and only splits
it when provided, so `BigQueryToMsSqlOperator` no longer needs to pass the
synthetic `__airflow_unrendered_*` placeholder. The MSSQL operator still
derives `dataset_id` / `table_id` from the rendered
`source_project_dataset_table` during `execute()`.
I also added a regression assertion to the rendered-source test to confirm
the placeholder values are not present before execution.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]