From 97482cd9c9fb08243d46e24634044573dd4ca0d5 Mon Sep 17 00:00:00 2001 From: Sri Harsha CH Date: Mon, 10 Feb 2025 11:07:03 +0000 Subject: [PATCH 1/3] fix(spanner): end spans for read-write methods --- .../java/com/google/cloud/spanner/DatabaseClientImpl.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java index 92971ff320f..daa56e19d92 100644 --- a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java +++ b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java @@ -282,6 +282,8 @@ public TransactionRunner readWriteTransaction(TransactionOption... options) { span.setStatus(e); span.end(); throw e; + } finally { + span.end(); } } @@ -294,6 +296,8 @@ public TransactionManager transactionManager(TransactionOption... options) { span.setStatus(e); span.end(); throw e; + } finally { + span.end(); } } @@ -306,6 +310,8 @@ public AsyncRunner runAsync(TransactionOption... options) { span.setStatus(e); span.end(); throw e; + } finally { + span.end(); } } @@ -318,6 +324,8 @@ public AsyncTransactionManager transactionManagerAsync(TransactionOption... opti span.setStatus(e); span.end(); throw e; + } finally { + span.end(); } } From e9cda92fe62e79fe03ac09d0750d5d75c9b9dc87 Mon Sep 17 00:00:00 2001 From: Sri Harsha CH Date: Mon, 10 Feb 2025 11:34:43 +0000 Subject: [PATCH 2/3] fix(spanner): fix tests --- .../cloud/spanner/DatabaseClientImplTest.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java index 87ea5c19ce9..91ae0646731 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java @@ -4006,7 +4006,10 @@ public void testTransactionManager_usesOptions() { when(pool.getSession()).thenReturn(session); TransactionOption option = mock(TransactionOption.class); - DatabaseClientImpl client = new DatabaseClientImpl(pool, mock(TraceWrapper.class)); + TraceWrapper traceWrapper = + new TraceWrapper(Tracing.getTracer(), OpenTelemetry.noop().getTracer(""), false); + + DatabaseClientImpl client = new DatabaseClientImpl(pool, traceWrapper); try (TransactionManager ignore = client.transactionManager(option)) { verify(session).transactionManager(option); } @@ -4019,7 +4022,10 @@ public void testRunAsync_usesOptions() { when(pool.getSession()).thenReturn(session); TransactionOption option = mock(TransactionOption.class); - DatabaseClientImpl client = new DatabaseClientImpl(pool, mock(TraceWrapper.class)); + TraceWrapper traceWrapper = + new TraceWrapper(Tracing.getTracer(), OpenTelemetry.noop().getTracer(""), false); + + DatabaseClientImpl client = new DatabaseClientImpl(pool, traceWrapper); client.runAsync(option); verify(session).runAsync(option); @@ -4032,7 +4038,10 @@ public void testTransactionManagerAsync_usesOptions() { when(pool.getSession()).thenReturn(session); TransactionOption option = mock(TransactionOption.class); - DatabaseClientImpl client = new DatabaseClientImpl(pool, mock(TraceWrapper.class)); + TraceWrapper traceWrapper = + new TraceWrapper(Tracing.getTracer(), OpenTelemetry.noop().getTracer(""), false); + + DatabaseClientImpl client = new DatabaseClientImpl(pool, traceWrapper); try (AsyncTransactionManager ignore = client.transactionManagerAsync(option)) { verify(session).transactionManagerAsync(option); } From bda24765c3778aff873b487255f29002e8ccd303 Mon Sep 17 00:00:00 2001 From: Sri Harsha CH Date: Mon, 10 Feb 2025 12:44:00 +0000 Subject: [PATCH 3/3] fix(spanner): fix tests --- .../com/google/cloud/spanner/DatabaseClientImpl.java | 6 ------ .../google/cloud/spanner/DatabaseClientImplTest.java | 10 ++-------- 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java index daa56e19d92..1be91c84f9a 100644 --- a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java +++ b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseClientImpl.java @@ -282,8 +282,6 @@ public TransactionRunner readWriteTransaction(TransactionOption... options) { span.setStatus(e); span.end(); throw e; - } finally { - span.end(); } } @@ -310,8 +308,6 @@ public AsyncRunner runAsync(TransactionOption... options) { span.setStatus(e); span.end(); throw e; - } finally { - span.end(); } } @@ -324,8 +320,6 @@ public AsyncTransactionManager transactionManagerAsync(TransactionOption... opti span.setStatus(e); span.end(); throw e; - } finally { - span.end(); } } diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java index 91ae0646731..bfd68f38595 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/DatabaseClientImplTest.java @@ -4022,10 +4022,7 @@ public void testRunAsync_usesOptions() { when(pool.getSession()).thenReturn(session); TransactionOption option = mock(TransactionOption.class); - TraceWrapper traceWrapper = - new TraceWrapper(Tracing.getTracer(), OpenTelemetry.noop().getTracer(""), false); - - DatabaseClientImpl client = new DatabaseClientImpl(pool, traceWrapper); + DatabaseClientImpl client = new DatabaseClientImpl(pool, mock(TraceWrapper.class)); client.runAsync(option); verify(session).runAsync(option); @@ -4038,10 +4035,7 @@ public void testTransactionManagerAsync_usesOptions() { when(pool.getSession()).thenReturn(session); TransactionOption option = mock(TransactionOption.class); - TraceWrapper traceWrapper = - new TraceWrapper(Tracing.getTracer(), OpenTelemetry.noop().getTracer(""), false); - - DatabaseClientImpl client = new DatabaseClientImpl(pool, traceWrapper); + DatabaseClientImpl client = new DatabaseClientImpl(pool, mock(TraceWrapper.class)); try (AsyncTransactionManager ignore = client.transactionManagerAsync(option)) { verify(session).transactionManagerAsync(option); }