From e8dbfe709d72a04038e05166adbad275642f1f22 Mon Sep 17 00:00:00 2001 From: surbhigarg92 Date: Fri, 4 Aug 2023 06:18:47 +0000 Subject: [PATCH 1/2] Revert "feat: Set LAR as False (#980)" (#992) This reverts commit 75e8a59ff5d7f15088b9c4ba5961345746e35bcc. --- google/cloud/spanner_dbapi/connection.py | 13 ++++++------- google/cloud/spanner_v1/client.py | 9 ++++----- tests/unit/spanner_dbapi/test_connect.py | 4 ++-- tests/unit/test_client.py | 2 +- 4 files changed, 13 insertions(+), 15 deletions(-) diff --git a/google/cloud/spanner_dbapi/connection.py b/google/cloud/spanner_dbapi/connection.py index 6f5a9a4e0c..efbdc80f3f 100644 --- a/google/cloud/spanner_dbapi/connection.py +++ b/google/cloud/spanner_dbapi/connection.py @@ -508,7 +508,7 @@ def connect( pool=None, user_agent=None, client=None, - route_to_leader_enabled=False, + route_to_leader_enabled=True, ): """Creates a connection to a Google Cloud Spanner database. @@ -547,10 +547,9 @@ def connect( :type route_to_leader_enabled: boolean :param route_to_leader_enabled: - (Optional) Default False. Set route_to_leader_enabled as True to - enable leader aware routing. Enabling leader aware routing - would route all requests in RW/PDML transactions to the - leader region. + (Optional) Default True. Set route_to_leader_enabled as False to + disable leader aware routing. Disabling leader aware routing would + route all requests in RW/PDML transactions to the closest region. :rtype: :class:`google.cloud.spanner_dbapi.connection.Connection` @@ -568,14 +567,14 @@ def connect( credentials, project=project, client_info=client_info, - route_to_leader_enabled=False, + route_to_leader_enabled=True, ) else: client = spanner.Client( project=project, credentials=credentials, client_info=client_info, - route_to_leader_enabled=False, + route_to_leader_enabled=True, ) else: if project is not None and client.project != project: diff --git a/google/cloud/spanner_v1/client.py b/google/cloud/spanner_v1/client.py index 5fac1dd9e6..a0e848228b 100644 --- a/google/cloud/spanner_v1/client.py +++ b/google/cloud/spanner_v1/client.py @@ -116,10 +116,9 @@ class Client(ClientWithProject): :type route_to_leader_enabled: boolean :param route_to_leader_enabled: - (Optional) Default False. Set route_to_leader_enabled as True to - enable leader aware routing. Enabling leader aware routing - would route all requests in RW/PDML transactions to the - leader region. + (Optional) Default True. Set route_to_leader_enabled as False to + disable leader aware routing. Disabling leader aware routing would + route all requests in RW/PDML transactions to the closest region. :raises: :class:`ValueError ` if both ``read_only`` and ``admin`` are :data:`True` @@ -139,7 +138,7 @@ def __init__( client_info=_CLIENT_INFO, client_options=None, query_options=None, - route_to_leader_enabled=False, + route_to_leader_enabled=True, ): self._emulator_host = _get_spanner_emulator_host() diff --git a/tests/unit/spanner_dbapi/test_connect.py b/tests/unit/spanner_dbapi/test_connect.py index a5b520bcbf..86dde73159 100644 --- a/tests/unit/spanner_dbapi/test_connect.py +++ b/tests/unit/spanner_dbapi/test_connect.py @@ -86,7 +86,7 @@ def test_w_explicit(self, mock_client): project=PROJECT, credentials=credentials, client_info=mock.ANY, - route_to_leader_enabled=False, + route_to_leader_enabled=True, ) client_info = mock_client.call_args_list[0][1]["client_info"] self.assertEqual(client_info.user_agent, USER_AGENT) @@ -120,7 +120,7 @@ def test_w_credential_file_path(self, mock_client): credentials_path, project=PROJECT, client_info=mock.ANY, - route_to_leader_enabled=False, + route_to_leader_enabled=True, ) client_info = factory.call_args_list[0][1]["client_info"] self.assertEqual(client_info.user_agent, USER_AGENT) diff --git a/tests/unit/test_client.py b/tests/unit/test_client.py index 600efd5dc8..ed79271a96 100644 --- a/tests/unit/test_client.py +++ b/tests/unit/test_client.py @@ -59,7 +59,7 @@ def _constructor_test_helper( client_options=None, query_options=None, expected_query_options=None, - route_to_leader_enabled=None, + route_to_leader_enabled=True, ): import google.api_core.client_options from google.cloud.spanner_v1 import client as MUT From a32594f4bb683bf6a229ce119258c64c9ae3c09d Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Fri, 4 Aug 2023 00:12:48 -0700 Subject: [PATCH 2/2] chore(main): release 3.40.0 (#993) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- .release-please-manifest.json | 2 +- CHANGELOG.md | 7 +++++++ google/cloud/spanner_admin_database_v1/gapic_version.py | 2 +- google/cloud/spanner_admin_instance_v1/gapic_version.py | 2 +- google/cloud/spanner_v1/gapic_version.py | 2 +- .../snippet_metadata_google.spanner.admin.database.v1.json | 2 +- .../snippet_metadata_google.spanner.admin.instance.v1.json | 2 +- .../snippet_metadata_google.spanner.v1.json | 2 +- 8 files changed, 14 insertions(+), 7 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 051da005ab..704d289d35 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "3.39.0" + ".": "3.40.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 27f441b82d..e4d0febf42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,13 @@ [1]: https://pypi.org/project/google-cloud-spanner/#history +## [3.40.0](https://github.com/googleapis/python-spanner/compare/v3.39.0...v3.40.0) (2023-08-04) + + +### Features + +* Enable leader aware routing by default. This update contains performance optimisations that will reduce the latency of read/write transactions that originate from a region other than the default leader region. ([e8dbfe7](https://github.com/googleapis/python-spanner/commit/e8dbfe709d72a04038e05166adbad275642f1f22)) + ## [3.39.0](https://github.com/googleapis/python-spanner/compare/v3.38.0...v3.39.0) (2023-08-02) diff --git a/google/cloud/spanner_admin_database_v1/gapic_version.py b/google/cloud/spanner_admin_database_v1/gapic_version.py index 51483c89bf..948adf5442 100644 --- a/google/cloud/spanner_admin_database_v1/gapic_version.py +++ b/google/cloud/spanner_admin_database_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "3.39.0" # {x-release-please-version} +__version__ = "3.40.0" # {x-release-please-version} diff --git a/google/cloud/spanner_admin_instance_v1/gapic_version.py b/google/cloud/spanner_admin_instance_v1/gapic_version.py index 51483c89bf..948adf5442 100644 --- a/google/cloud/spanner_admin_instance_v1/gapic_version.py +++ b/google/cloud/spanner_admin_instance_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "3.39.0" # {x-release-please-version} +__version__ = "3.40.0" # {x-release-please-version} diff --git a/google/cloud/spanner_v1/gapic_version.py b/google/cloud/spanner_v1/gapic_version.py index 51483c89bf..948adf5442 100644 --- a/google/cloud/spanner_v1/gapic_version.py +++ b/google/cloud/spanner_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "3.39.0" # {x-release-please-version} +__version__ = "3.40.0" # {x-release-please-version} diff --git a/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json b/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json index d3212818a6..2dba67c96a 100644 --- a/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json +++ b/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-spanner-admin-database", - "version": "3.39.0" + "version": "3.40.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json b/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json index 930cce10b1..666a74a2d0 100644 --- a/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json +++ b/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-spanner-admin-instance", - "version": "3.39.0" + "version": "3.40.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.spanner.v1.json b/samples/generated_samples/snippet_metadata_google.spanner.v1.json index de9817cd50..0a774835ca 100644 --- a/samples/generated_samples/snippet_metadata_google.spanner.v1.json +++ b/samples/generated_samples/snippet_metadata_google.spanner.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-spanner", - "version": "3.39.0" + "version": "3.40.0" }, "snippets": [ {