-
Notifications
You must be signed in to change notification settings - Fork 61
Open
Labels
api: bigtableIssues related to the googleapis/python-bigtable API.Issues related to the googleapis/python-bigtable API.priority: p3Desirable enhancement or fix. May not be included in next release.Desirable enhancement or fix. May not be included in next release.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.‘Nice-to-have’ improvement, new feature or different behavior or design.
Milestone
Description
To enable the shim, we need to let the legacy client hold an instance of the hand-written BigtableDataClient.
The data client uses background threads to manage automatic channel refresh, which are cleaned up when close() is called. Code written for the legacy client likely doesn't call close the same way. We should disable background refresh for the wrapped client (and maybe expose it to end-users as well?)
Note: Consider whether the wrapped data client should use a different version string for analytics
From go/bigtable_legacy_deprecation:
Old API
- Users first create a Client, associated with a GCP project
- Then, they call client.instance(instance_id) to create an Instance associated with a a bigtable instance_id
- Then, they call instance.table(table_id, app_profile_id) to create a new Table associated with a bigtable table_id
- They can then call methods on the table instance to execute bigtable rpcs
Replacement
- We can create a BigtableDataClient when creating a legacy client, and hold it in a new internal client._data_client variable
- We can create a data Table when creating a legacy table, and hold it in a new internal table._data_table variable
Metadata
Metadata
Assignees
Labels
api: bigtableIssues related to the googleapis/python-bigtable API.Issues related to the googleapis/python-bigtable API.priority: p3Desirable enhancement or fix. May not be included in next release.Desirable enhancement or fix. May not be included in next release.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.‘Nice-to-have’ improvement, new feature or different behavior or design.