From bf8978fa81b85eaf994eb36be66cd1ba01d36ed0 Mon Sep 17 00:00:00 2001 From: Keshav Dandeva Date: Mon, 27 Jul 2026 20:44:23 +0000 Subject: [PATCH 1/4] fix(bigquery-jdbc): move `preferIPv4Stack=true` to `` --- java-bigquery-jdbc/pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/java-bigquery-jdbc/pom.xml b/java-bigquery-jdbc/pom.xml index d4082c679acd..fdcd50197691 100644 --- a/java-bigquery-jdbc/pom.xml +++ b/java-bigquery-jdbc/pom.xml @@ -48,9 +48,9 @@ 3.5.2 ${skipSurefire} + -Djava.net.preferIPv4Stack=true true - true @@ -58,9 +58,9 @@ org.apache.maven.plugins maven-failsafe-plugin + -Djava.net.preferIPv4Stack=true true - true @@ -479,14 +479,14 @@ org.apache.maven.plugins maven-surefire-plugin - --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED + -Djava.net.preferIPv4Stack=true --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED org.apache.maven.plugins maven-failsafe-plugin - --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED + -Djava.net.preferIPv4Stack=true --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED From d74c22bc57b9f9bf024a868c6589e589f2ae2bdc Mon Sep 17 00:00:00 2001 From: Keshav Dandeva Date: Mon, 27 Jul 2026 21:02:40 +0000 Subject: [PATCH 2/4] use ErrorManager for getting logging errors --- .../google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java b/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java index af5e5278ffb6..96efc4b7b6d9 100644 --- a/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java +++ b/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java @@ -30,6 +30,7 @@ import io.opentelemetry.context.Context; import java.time.Instant; import java.util.Collections; +import java.util.logging.ErrorManager; import java.util.logging.Handler; import java.util.logging.Level; import java.util.logging.LogRecord; @@ -78,7 +79,8 @@ public void publish(LogRecord record) { publishToOTel(record, connectionId, config.openTelemetry); } } catch (Throwable t) { - // Ignore exceptions to prevent breaking application logging or other handlers + // Report internal failures using JUL's ErrorManager without crashing the caller + reportError("Failed to publish log record", (Exception) t, ErrorManager.WRITE_FAILURE); } } From 2607e56b2f7ef694e2f68784b5e51e4ae1f27ace Mon Sep 17 00:00:00 2001 From: Keshav Dandeva Date: Mon, 27 Jul 2026 21:09:03 +0000 Subject: [PATCH 3/4] address pr feedback --- .../google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java b/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java index 96efc4b7b6d9..cba082bcbc50 100644 --- a/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java +++ b/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java @@ -80,7 +80,8 @@ public void publish(LogRecord record) { } } catch (Throwable t) { // Report internal failures using JUL's ErrorManager without crashing the caller - reportError("Failed to publish log record", (Exception) t, ErrorManager.WRITE_FAILURE); + Exception ex = t instanceof Exception ? (Exception) t : new Exception(t); + reportError("Failed to publish log record", ex, ErrorManager.WRITE_FAILURE); } } From df0d9efbf9fc8748d31ff04d85452047199df1d3 Mon Sep 17 00:00:00 2001 From: Keshav Dandeva Date: Mon, 27 Jul 2026 21:38:07 +0000 Subject: [PATCH 4/4] increase log polling timeout --- java-bigquery-jdbc/pom.xml | 6 ++---- .../google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java | 5 +---- .../google/cloud/bigquery/jdbc/it/ITOpenTelemetryTest.java | 2 +- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/java-bigquery-jdbc/pom.xml b/java-bigquery-jdbc/pom.xml index fdcd50197691..9ea2cfabf539 100644 --- a/java-bigquery-jdbc/pom.xml +++ b/java-bigquery-jdbc/pom.xml @@ -48,7 +48,6 @@ 3.5.2 ${skipSurefire} - -Djava.net.preferIPv4Stack=true true @@ -58,7 +57,6 @@ org.apache.maven.plugins maven-failsafe-plugin - -Djava.net.preferIPv4Stack=true true @@ -479,14 +477,14 @@ org.apache.maven.plugins maven-surefire-plugin - -Djava.net.preferIPv4Stack=true --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED + --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED org.apache.maven.plugins maven-failsafe-plugin - -Djava.net.preferIPv4Stack=true --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED + --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED diff --git a/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java b/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java index cba082bcbc50..af5e5278ffb6 100644 --- a/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java +++ b/java-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/OpenTelemetryJulHandler.java @@ -30,7 +30,6 @@ import io.opentelemetry.context.Context; import java.time.Instant; import java.util.Collections; -import java.util.logging.ErrorManager; import java.util.logging.Handler; import java.util.logging.Level; import java.util.logging.LogRecord; @@ -79,9 +78,7 @@ public void publish(LogRecord record) { publishToOTel(record, connectionId, config.openTelemetry); } } catch (Throwable t) { - // Report internal failures using JUL's ErrorManager without crashing the caller - Exception ex = t instanceof Exception ? (Exception) t : new Exception(t); - reportError("Failed to publish log record", ex, ErrorManager.WRITE_FAILURE); + // Ignore exceptions to prevent breaking application logging or other handlers } } diff --git a/java-bigquery-jdbc/src/test/java/com/google/cloud/bigquery/jdbc/it/ITOpenTelemetryTest.java b/java-bigquery-jdbc/src/test/java/com/google/cloud/bigquery/jdbc/it/ITOpenTelemetryTest.java index 444b92fcefc0..4ffb4c9aed1b 100644 --- a/java-bigquery-jdbc/src/test/java/com/google/cloud/bigquery/jdbc/it/ITOpenTelemetryTest.java +++ b/java-bigquery-jdbc/src/test/java/com/google/cloud/bigquery/jdbc/it/ITOpenTelemetryTest.java @@ -307,7 +307,7 @@ private Trace verifyAndFetchTrace(String traceId) throws Exception { private T pollWithRetry(java.util.concurrent.Callable task) throws InterruptedException { int attempts = 0; - int maxAttempts = 10; + int maxAttempts = 24; long delayMs = 10000; // 10 second wait for GCP to ingest data