From 32f275762deb5aafbdfabe0fdacdd1145305a673 Mon Sep 17 00:00:00 2001 From: Neil Date: Fri, 14 Aug 2026 13:36:44 +0100 Subject: [PATCH] rewire bigtable.internal.sessions-required system property. This is used internally for testing. --- .../v2/internal/util/ClientConfigurationManager.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/java-bigtable/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/internal/util/ClientConfigurationManager.java b/java-bigtable/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/internal/util/ClientConfigurationManager.java index 03a83f034b14..8659bd50cff9 100644 --- a/java-bigtable/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/internal/util/ClientConfigurationManager.java +++ b/java-bigtable/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/internal/util/ClientConfigurationManager.java @@ -410,15 +410,20 @@ private ClientConfiguration normalizeConfig(ClientConfiguration cfg) { // cfg, so that a nonzero session_load supplied via the override sys-prop is honoured even when // the server-returned config has session_load=0. if (builder.getSessionConfiguration().getSessionLoad() == 0) { - builder.clearSessionConfiguration(); - return builder.build(); + if (Boolean.getBoolean("bigtable.internal.sessions-required")) { + builder.getSessionConfigurationBuilder().setSessionLoad(1.0f); + } else { + builder.clearSessionConfiguration(); + return builder.build(); + } } return builder.build(); } public boolean areSessionsRequired() { - return overrideConfig.map(c -> c.getSessionConfiguration().getSessionLoad() > 0).orElse(false); + return Boolean.getBoolean("bigtable.internal.sessions-required") + || overrideConfig.map(c -> c.getSessionConfiguration().getSessionLoad() > 0).orElse(false); } private long getRetryDelay(int attempt) {