mjwinkler opened a new issue, #28806: URL: https://github.com/apache/airflow/issues/28806
### Apache Airflow Provider(s) google ### Versions of Apache Airflow Providers apache-airflow-providers-google==8.6.0 ### Apache Airflow version 2.5.0 ### Operating System Debian GNU/Linux ### Deployment Astronomer ### Deployment details _No response_ ### What happened PR `Expose SQL to GCS Metadata (https://github.com/apache/airflow/pull/24382)` made a breaking change [here](https://github.com/apache/airflow/blob/3eee33ac8cb74cfbb08bce9090e9c601cf98da44/airflow/providers/google/cloud/transfers/sql_to_gcs.py#L286) that results in no files being returned when there are no data rows (empty table) rather than a single empty file as in the past. ### What you think should happen instead I would like to preserve the original behavior of having at least one file returned even if it is empty. Or to make that behavior optional via a new parameter. The original behavior can be implemented with the following code change: FROM: ``` if file_to_upload["file_row_count"] > 0: yield file_to_upload ``` TO: ``` if file_no == 0 or file_to_upload["file_row_count"] > 0: yield file_to_upload ``` ### How to reproduce Create a DAG that uses BaseSQLToGCSOperator with a SQL command that references an empty SQL table or returns no rows. The `execute` method will not write any files. ### Anything else _No response_ ### Are you willing to submit PR? - [ ] Yes I am willing to submit a PR! ### Code of Conduct - [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md) -- 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]
