From 88bbec529745031b6ff7d3f854b33188daf08312 Mon Sep 17 00:00:00 2001 From: Igor Berntein Date: Fri, 27 Sep 2024 17:23:57 -0400 Subject: [PATCH 1/3] deps: upgrade java-bigtable to 2.44.1 Change-Id: I8b3bcbd2ad6398dc67517ad6cbaef9d080022a37 --- .../veneer/BigtableHBaseVeneerSettings.java | 26 +++++++++++++++---- .../veneer/TestBulkMutationVeneerApi.java | 17 +++++++----- pom.xml | 4 +-- 3 files changed, 33 insertions(+), 14 deletions(-) diff --git a/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java b/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java index 7b9c0cb051..a345af4c9e 100644 --- a/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java +++ b/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java @@ -298,8 +298,14 @@ private BigtableDataSettings buildBigtableDataSettings(ClientOperationTimeouts c int port = Integer.parseInt(emulatorEndpoint.get().substring(split + 1)); dataBuilder = BigtableDataSettings.newBuilderForEmulator(host, port); } else { + String endpoint = BigtableDataSettings.newBuilder() + .setProjectId(getProjectId()) + .setInstanceId(getInstanceId()) + .build() + .getStubSettings().getEndpoint(); + dataBuilder = BigtableDataSettings.newBuilder(); - configureConnection(dataBuilder.stubSettings(), BIGTABLE_HOST_KEY); + configureConnection(dataBuilder.stubSettings(), BIGTABLE_HOST_KEY, endpoint); configureCredentialProvider(dataBuilder.stubSettings()); } configureHeaderProvider(dataBuilder.stubSettings()); @@ -366,8 +372,14 @@ private BigtableTableAdminSettings buildBigtableTableAdminSettings() throws IOEx int port = Integer.parseInt(emulatorEndpoint.substring(split + 1)); adminBuilder = BigtableTableAdminSettings.newBuilderForEmulator(host, port); } else { + String defaultEndpoint = BigtableTableAdminSettings.newBuilder() + .setProjectId(getProjectId()) + .setInstanceId(getInstanceId()) + .build() + .getStubSettings() + .getEndpoint(); adminBuilder = BigtableTableAdminSettings.newBuilder(); - configureConnection(adminBuilder.stubSettings(), BIGTABLE_ADMIN_HOST_KEY); + configureConnection(adminBuilder.stubSettings(), BIGTABLE_ADMIN_HOST_KEY, defaultEndpoint); configureCredentialProvider(adminBuilder.stubSettings()); } configureHeaderProvider(adminBuilder.stubSettings()); @@ -414,8 +426,13 @@ public ManagedChannelBuilder apply( }) .build()); } else { + String defaultEndpoint = BigtableInstanceAdminSettings.newBuilder() + .setProjectId(getProjectId()) + .build() + .getStubSettings() + .getEndpoint(); adminBuilder = BigtableInstanceAdminSettings.newBuilder(); - configureConnection(adminBuilder.stubSettings(), BIGTABLE_ADMIN_HOST_KEY); + configureConnection(adminBuilder.stubSettings(), BIGTABLE_ADMIN_HOST_KEY, defaultEndpoint); configureCredentialProvider(adminBuilder.stubSettings()); } configureHeaderProvider(adminBuilder.stubSettings()); @@ -425,8 +442,7 @@ public ManagedChannelBuilder apply( return adminBuilder.build(); } - private void configureConnection(StubSettings.Builder stubSettings, String endpointKey) { - String defaultEndpoint = stubSettings.getEndpoint(); + private void configureConnection(StubSettings.Builder stubSettings, String endpointKey, String defaultEndpoint) { String defaultHostname = defaultEndpoint.substring(0, defaultEndpoint.lastIndexOf(':')); String defaultPort = defaultEndpoint.substring(defaultEndpoint.lastIndexOf(':') + 1); diff --git a/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java b/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java index 54335948ba..ee3b4966e4 100644 --- a/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java +++ b/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java @@ -41,6 +41,7 @@ import com.google.cloud.bigtable.data.v2.models.RowMutationEntry; import com.google.cloud.bigtable.hbase.wrappers.BulkMutationWrapper; import java.io.IOException; +import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import org.junit.Before; import org.junit.Rule; @@ -124,12 +125,11 @@ public Object answer(InvocationOnMock invocationOnMock) { @Test public void testWhenBatcherIsClosed() throws IOException { - BatchingSettings batchingSettings = mock(BatchingSettings.class); - FlowControlSettings flowControlSettings = - FlowControlSettings.newBuilder() - .setLimitExceededBehavior(LimitExceededBehavior.Ignore) - .build(); - when(batchingSettings.getFlowControlSettings()).thenReturn(flowControlSettings); + BatchingSettings batchingSettings = BatchingSettings.newBuilder() + .setFlowControlSettings( + FlowControlSettings.newBuilder() + .setLimitExceededBehavior(LimitExceededBehavior.Ignore).build()) + .build(); BatchingDescriptor mockBatchingDescriptor = mock(BatchingDescriptor.class); @@ -141,6 +141,8 @@ public void testWhenBatcherIsClosed() throws IOException { when(unaryCallable.futureCall(any(), any())) .thenReturn(ApiFutures.immediateFuture(new Object())); + ScheduledExecutorService executor = Executors.newScheduledThreadPool(0); + @SuppressWarnings("unchecked") Batcher actualBatcher = new BatcherImpl( @@ -148,9 +150,10 @@ public void testWhenBatcherIsClosed() throws IOException { unaryCallable, new Object(), batchingSettings, - mock(ScheduledExecutorService.class)); + executor); BulkMutationWrapper underTest = new BulkMutationVeneerApi(actualBatcher, 0); underTest.close(); + executor.shutdownNow(); Exception actualEx = null; try { diff --git a/pom.xml b/pom.xml index 5815a27adc..f542ed9d21 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,7 @@ limitations under the License. com.google.cloud google-cloud-shared-config - 1.7.7 + 1.11.1 @@ -55,7 +55,7 @@ limitations under the License. UTF-8 - 2.39.2 + 2.44.1 0.175.0 1.29.2 From c7af5ba0bf3db9179e1a3d52c5e8665d319379fa Mon Sep 17 00:00:00 2001 From: Igor Berntein Date: Fri, 27 Sep 2024 17:29:08 -0400 Subject: [PATCH 2/3] format Change-Id: I88fae43328ec6e437468db1aefd7dd3f4a34ef11 --- .../veneer/BigtableHBaseVeneerSettings.java | 39 +++++++++++-------- .../veneer/TestBulkMutationVeneerApi.java | 14 +++---- 2 files changed, 28 insertions(+), 25 deletions(-) diff --git a/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java b/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java index a345af4c9e..64ec3c0273 100644 --- a/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java +++ b/bigtable-client-core-parent/bigtable-hbase/src/main/java/com/google/cloud/bigtable/hbase/wrappers/veneer/BigtableHBaseVeneerSettings.java @@ -298,11 +298,13 @@ private BigtableDataSettings buildBigtableDataSettings(ClientOperationTimeouts c int port = Integer.parseInt(emulatorEndpoint.get().substring(split + 1)); dataBuilder = BigtableDataSettings.newBuilderForEmulator(host, port); } else { - String endpoint = BigtableDataSettings.newBuilder() - .setProjectId(getProjectId()) - .setInstanceId(getInstanceId()) - .build() - .getStubSettings().getEndpoint(); + String endpoint = + BigtableDataSettings.newBuilder() + .setProjectId(getProjectId()) + .setInstanceId(getInstanceId()) + .build() + .getStubSettings() + .getEndpoint(); dataBuilder = BigtableDataSettings.newBuilder(); configureConnection(dataBuilder.stubSettings(), BIGTABLE_HOST_KEY, endpoint); @@ -372,12 +374,13 @@ private BigtableTableAdminSettings buildBigtableTableAdminSettings() throws IOEx int port = Integer.parseInt(emulatorEndpoint.substring(split + 1)); adminBuilder = BigtableTableAdminSettings.newBuilderForEmulator(host, port); } else { - String defaultEndpoint = BigtableTableAdminSettings.newBuilder() - .setProjectId(getProjectId()) - .setInstanceId(getInstanceId()) - .build() - .getStubSettings() - .getEndpoint(); + String defaultEndpoint = + BigtableTableAdminSettings.newBuilder() + .setProjectId(getProjectId()) + .setInstanceId(getInstanceId()) + .build() + .getStubSettings() + .getEndpoint(); adminBuilder = BigtableTableAdminSettings.newBuilder(); configureConnection(adminBuilder.stubSettings(), BIGTABLE_ADMIN_HOST_KEY, defaultEndpoint); configureCredentialProvider(adminBuilder.stubSettings()); @@ -426,11 +429,12 @@ public ManagedChannelBuilder apply( }) .build()); } else { - String defaultEndpoint = BigtableInstanceAdminSettings.newBuilder() - .setProjectId(getProjectId()) - .build() - .getStubSettings() - .getEndpoint(); + String defaultEndpoint = + BigtableInstanceAdminSettings.newBuilder() + .setProjectId(getProjectId()) + .build() + .getStubSettings() + .getEndpoint(); adminBuilder = BigtableInstanceAdminSettings.newBuilder(); configureConnection(adminBuilder.stubSettings(), BIGTABLE_ADMIN_HOST_KEY, defaultEndpoint); configureCredentialProvider(adminBuilder.stubSettings()); @@ -442,7 +446,8 @@ public ManagedChannelBuilder apply( return adminBuilder.build(); } - private void configureConnection(StubSettings.Builder stubSettings, String endpointKey, String defaultEndpoint) { + private void configureConnection( + StubSettings.Builder stubSettings, String endpointKey, String defaultEndpoint) { String defaultHostname = defaultEndpoint.substring(0, defaultEndpoint.lastIndexOf(':')); String defaultPort = defaultEndpoint.substring(defaultEndpoint.lastIndexOf(':') + 1); diff --git a/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java b/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java index ee3b4966e4..6db893c8e7 100644 --- a/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java +++ b/bigtable-client-core-parent/bigtable-hbase/src/test/java/com/google/cloud/bigtable/hbase/wrappers/veneer/TestBulkMutationVeneerApi.java @@ -125,11 +125,13 @@ public Object answer(InvocationOnMock invocationOnMock) { @Test public void testWhenBatcherIsClosed() throws IOException { - BatchingSettings batchingSettings = BatchingSettings.newBuilder() + BatchingSettings batchingSettings = + BatchingSettings.newBuilder() .setFlowControlSettings( FlowControlSettings.newBuilder() - .setLimitExceededBehavior(LimitExceededBehavior.Ignore).build()) - .build(); + .setLimitExceededBehavior(LimitExceededBehavior.Ignore) + .build()) + .build(); BatchingDescriptor mockBatchingDescriptor = mock(BatchingDescriptor.class); @@ -146,11 +148,7 @@ public void testWhenBatcherIsClosed() throws IOException { @SuppressWarnings("unchecked") Batcher actualBatcher = new BatcherImpl( - mockBatchingDescriptor, - unaryCallable, - new Object(), - batchingSettings, - executor); + mockBatchingDescriptor, unaryCallable, new Object(), batchingSettings, executor); BulkMutationWrapper underTest = new BulkMutationVeneerApi(actualBatcher, 0); underTest.close(); executor.shutdownNow(); From 3236aa152d8da021184c40f928682d8e90ae2a83 Mon Sep 17 00:00:00 2001 From: Igor Berntein Date: Fri, 27 Sep 2024 17:49:36 -0400 Subject: [PATCH 3/3] fix shading Change-Id: I591d5a737828b39f857647dc5478fd558e2e1473 --- bigtable-hbase-2.x-parent/bigtable-hbase-2.x-shaded/pom.xml | 1 + bigtable-hbase-2.x-parent/bigtable-hbase-2.x/pom.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/bigtable-hbase-2.x-parent/bigtable-hbase-2.x-shaded/pom.xml b/bigtable-hbase-2.x-parent/bigtable-hbase-2.x-shaded/pom.xml index 6d3cfb74e9..5040bb2599 100644 --- a/bigtable-hbase-2.x-parent/bigtable-hbase-2.x-shaded/pom.xml +++ b/bigtable-hbase-2.x-parent/bigtable-hbase-2.x-shaded/pom.xml @@ -395,6 +395,7 @@ limitations under the License. io.opentelemetry:opentelemetry-api io.opentelemetry:opentelemetry-context + io.opentelemetry:opentelemetry-semconv diff --git a/bigtable-hbase-2.x-parent/bigtable-hbase-2.x/pom.xml b/bigtable-hbase-2.x-parent/bigtable-hbase-2.x/pom.xml index 1987483a44..bd1baaa9a3 100644 --- a/bigtable-hbase-2.x-parent/bigtable-hbase-2.x/pom.xml +++ b/bigtable-hbase-2.x-parent/bigtable-hbase-2.x/pom.xml @@ -184,6 +184,7 @@ limitations under the License. io.opentelemetry:opentelemetry-api io.opentelemetry:opentelemetry-context + io.opentelemetry:opentelemetry-semconv