jrmccluskey commented on code in PR #40359: URL: https://github.com/apache/beam/pull/40359#discussion_r4251930611
########## sdks/python/apache_beam/io/gcp/bigquery_compat.py: ########## @@ -15,1440 +15,152 @@ # limitations under the License. # -"""Compatibility shims and legacy client emulation for BigQuery. +"""Bridge for legacy apitools BigQuery message inputs. Review Comment: There were a number of problems once I tried to actually move BQ interactions over to the new client while maintaining the old routing which led to a really tangled web of failing test cases and mismatched behavior, along with a lot of branches in the code based on the client being used. A second iteration of the idea (partially represented here) is to have Beam maintain its own representations of BQ resources that get passed to a specific backend at runtime (either the modern or legacy client) that converts the beam-specific implementation to the framework specific types as needed. Then the backend implementations either route to the new client or the old one. Coming back to this particular approach after not looking at it for a few weeks, I'm not stoked with all of the scaffolding that goes into temporarily supporting multiple approaches when the end goal is to only support one at the end anyway. I think I'm waiving the white flag on the AI driven approach to this one, it's well past time to just write a doc instead. -- 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]
