From b95f1221e2672e3c824daaed81783a6228d54fe3 Mon Sep 17 00:00:00 2001
From: "release-please[bot]"
<55107282+release-please[bot]@users.noreply.github.com>
Date: Tue, 15 Jul 2025 11:19:07 -0400
Subject: [PATCH 01/19] chore(main): release 2.53.1-SNAPSHOT (#3886)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
---
benchmark/pom.xml | 2 +-
google-cloud-bigquery-bom/pom.xml | 4 ++--
google-cloud-bigquery/pom.xml | 4 ++--
pom.xml | 4 ++--
samples/snapshot/pom.xml | 2 +-
versions.txt | 2 +-
6 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/benchmark/pom.xml b/benchmark/pom.xml
index 8674b7102..9352cc46f 100644
--- a/benchmark/pom.xml
+++ b/benchmark/pom.xml
@@ -6,7 +6,7 @@
google-cloud-bigquery-parent
com.google.cloud
- 2.53.0
+ 2.53.1-SNAPSHOT
diff --git a/google-cloud-bigquery-bom/pom.xml b/google-cloud-bigquery-bom/pom.xml
index bc3a9e0c3..c41c4c601 100644
--- a/google-cloud-bigquery-bom/pom.xml
+++ b/google-cloud-bigquery-bom/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-bigquery-bom
- 2.53.0
+ 2.53.1-SNAPSHOT
pom
com.google.cloud
@@ -54,7 +54,7 @@
com.google.cloud
google-cloud-bigquery
- 2.53.0
+ 2.53.1-SNAPSHOT
diff --git a/google-cloud-bigquery/pom.xml b/google-cloud-bigquery/pom.xml
index ad20f607e..b3f4461a0 100644
--- a/google-cloud-bigquery/pom.xml
+++ b/google-cloud-bigquery/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-bigquery
- 2.53.0
+ 2.53.1-SNAPSHOT
jar
BigQuery
https://github.com/googleapis/java-bigquery
@@ -11,7 +11,7 @@
com.google.cloud
google-cloud-bigquery-parent
- 2.53.0
+ 2.53.1-SNAPSHOT
google-cloud-bigquery
diff --git a/pom.xml b/pom.xml
index 4bc7652ba..bfbc88b03 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-cloud-bigquery-parent
pom
- 2.53.0
+ 2.53.1-SNAPSHOT
BigQuery Parent
https://github.com/googleapis/java-bigquery
@@ -93,7 +93,7 @@
com.google.cloud
google-cloud-bigquery
- 2.53.0
+ 2.53.1-SNAPSHOT
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index 7e1bfd314..9900dc829 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -44,7 +44,7 @@
com.google.cloud
google-cloud-bigquery
- 2.53.0
+ 2.53.1-SNAPSHOT
diff --git a/versions.txt b/versions.txt
index 5245c445b..73c78399e 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,4 +1,4 @@
# Format:
# module:released-version:current-version
-google-cloud-bigquery:2.53.0:2.53.0
\ No newline at end of file
+google-cloud-bigquery:2.53.0:2.53.1-SNAPSHOT
\ No newline at end of file
From a2dbafb9bc1c37ffda6e21605e98637a52b42ee3 Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Tue, 15 Jul 2025 17:49:48 +0200
Subject: [PATCH 02/19] chore(deps): update dependency
com.google.cloud:google-cloud-bigquery to v2.53.0 (#3887)
---
samples/install-without-bom/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml
index 11e13e43e..3faa29981 100644
--- a/samples/install-without-bom/pom.xml
+++ b/samples/install-without-bom/pom.xml
@@ -45,7 +45,7 @@
com.google.cloud
google-cloud-bigquery
- 2.52.0
+ 2.53.0
From 84207e297eec75bcb4f1cc1b64423d7c2ddd6c30 Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Tue, 15 Jul 2025 18:54:15 +0200
Subject: [PATCH 03/19] deps: update dependency
com.google.api.grpc:proto-google-cloud-bigqueryconnection-v1 to v2.70.0
(#3890)
---
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index bfbc88b03..32f6636a6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -149,7 +149,7 @@
com.google.api.grpc
proto-google-cloud-bigqueryconnection-v1
- 2.69.0
+ 2.70.0
test
From 83278f66bbab19a5ff6131374687c65358dc392a Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Thu, 17 Jul 2025 18:24:49 +0200
Subject: [PATCH 04/19] chore(deps): update dependency
com.google.cloud:google-cloud-bigtable to v2.62.0 (#3894)
---
samples/install-without-bom/pom.xml | 2 +-
samples/snapshot/pom.xml | 2 +-
samples/snippets/pom.xml | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml
index 3faa29981..fac67658a 100644
--- a/samples/install-without-bom/pom.xml
+++ b/samples/install-without-bom/pom.xml
@@ -63,7 +63,7 @@
com.google.cloud
google-cloud-bigtable
- 2.61.0
+ 2.62.0
test
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index 9900dc829..9f836d721 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -61,7 +61,7 @@
com.google.cloud
google-cloud-bigtable
- 2.61.0
+ 2.62.0
test
diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml
index 62c7f22ec..7ec8cdc10 100644
--- a/samples/snippets/pom.xml
+++ b/samples/snippets/pom.xml
@@ -79,7 +79,7 @@
com.google.cloud
google-cloud-bigtable
- 2.61.0
+ 2.62.0
test
From 92371d9d9a4dd64f5291342aff1e4f5aae16da9e Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Thu, 17 Jul 2025 19:33:10 +0200
Subject: [PATCH 05/19] chore(deps): update dependency
com.google.cloud:libraries-bom to v26.64.0 (#3895)
---
samples/snippets/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml
index 7ec8cdc10..3f293ddd0 100644
--- a/samples/snippets/pom.xml
+++ b/samples/snippets/pom.xml
@@ -47,7 +47,7 @@
com.google.cloud
libraries-bom
- 26.63.0
+ 26.64.0
pom
import
From fce3d8f874f800a0f48e59f80c47ff53e2b7f166 Mon Sep 17 00:00:00 2001
From: Jin Seop Kim
Date: Fri, 18 Jul 2025 13:02:17 -0700
Subject: [PATCH 06/19] chore: create LTS branch 2.51.x (#3896)
---
.github/release-please.yml | 4 ++++
.github/sync-repo-settings.yaml | 15 +++++++++++++++
2 files changed, 19 insertions(+)
diff --git a/.github/release-please.yml b/.github/release-please.yml
index d722d35a2..f87ac1ecc 100644
--- a/.github/release-please.yml
+++ b/.github/release-please.yml
@@ -35,6 +35,10 @@ branches:
handleGHRelease: true
releaseType: java-backport
branch: 2.52.x
+ - bumpMinorPreMajor: true
+ handleGHRelease: true
+ releaseType: java-backport
+ branch: 2.51.x
bumpMinorPreMajor: true
handleGHRelease: true
releaseType: java-yoshi
diff --git a/.github/sync-repo-settings.yaml b/.github/sync-repo-settings.yaml
index 26f85cb16..8a7fa3e30 100644
--- a/.github/sync-repo-settings.yaml
+++ b/.github/sync-repo-settings.yaml
@@ -147,6 +147,21 @@ branchProtectionRules:
- cla/google
- javadoc
- unmanaged_dependency_check
+ - pattern: 2.51.x
+ isAdminEnforced: true
+ requiredApprovingReviewCount: 1
+ requiresCodeOwnerReviews: true
+ requiresStrictStatusChecks: false
+ requiredStatusCheckContexts:
+ - dependencies (17)
+ - lint
+ - clirr
+ - units (8)
+ - units (11)
+ - 'Kokoro - Test: Integration'
+ - cla/google
+ - javadoc
+ - unmanaged_dependency_check
permissionRules:
- team: api-bigquery
permission: admin
From 36d3e82c80a1de7b00d83b0d85c1a5ad65d84640 Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Mon, 21 Jul 2025 17:55:40 +0200
Subject: [PATCH 07/19] chore(deps): update google cloud java monorepo updates
(#3889)
---
pom.xml | 4 ++--
samples/install-without-bom/pom.xml | 2 +-
samples/snapshot/pom.xml | 2 +-
samples/snippets/pom.xml | 2 +-
4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/pom.xml b/pom.xml
index 32f6636a6..850b288e5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -79,7 +79,7 @@
com.google.cloud
google-cloud-datacatalog-bom
- 1.73.0
+ 1.74.0
pom
import
@@ -143,7 +143,7 @@
com.google.cloud
google-cloud-bigqueryconnection
- 2.69.0
+ 2.70.0
test
diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml
index fac67658a..c492b1182 100644
--- a/samples/install-without-bom/pom.xml
+++ b/samples/install-without-bom/pom.xml
@@ -69,7 +69,7 @@
com.google.cloud
google-cloud-bigqueryconnection
- 2.69.0
+ 2.70.0
test
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index 9f836d721..496458c70 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -67,7 +67,7 @@
com.google.cloud
google-cloud-bigqueryconnection
- 2.69.0
+ 2.70.0
test
diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml
index 3f293ddd0..0e32438ed 100644
--- a/samples/snippets/pom.xml
+++ b/samples/snippets/pom.xml
@@ -85,7 +85,7 @@
com.google.cloud
google-cloud-bigqueryconnection
- 2.69.0
+ 2.70.0
test
From e3d9ed92ca5d9b58b5747960d74f895ed8733ebf Mon Sep 17 00:00:00 2001
From: Liam Huffman <44932470+whuffman36@users.noreply.github.com>
Date: Wed, 23 Jul 2025 10:46:24 -0700
Subject: [PATCH 08/19] feat(bigquery): Add OpenTelemetry Samples (#3899)
* feat(bigquery): Add OpenTelemetry Samples
* Add dependencies to pom files
* fix style
* Fix dependencies, clean up sample
* Add sample without parent span
* Fix copy/paste error
* Remove reference to global otel object
* Replace custom exporter with logging exporter
* Add logging exporter dep to snapshot and without-bom
* Generate random strings for ds names
* feat(bigquery): Add custom console exporter to samples
* fix style, remove comments
---
samples/install-without-bom/pom.xml | 31 +++++
samples/snapshot/pom.xml | 42 +++++++
samples/snippets/pom.xml | 37 ++++++
.../bigquery/EnableOpenTelemetryTracing.java | 85 ++++++++++++++
...bleOpenTelemetryTracingWithParentSpan.java | 105 +++++++++++++++++
.../EnableOpenTelemetryTracingIT.java | 105 +++++++++++++++++
...eOpenTelemetryTracingWithParentSpanIT.java | 110 ++++++++++++++++++
7 files changed, 515 insertions(+)
create mode 100644 samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracing.java
create mode 100644 samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpan.java
create mode 100644 samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingIT.java
create mode 100644 samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpanIT.java
diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml
index c492b1182..87a567033 100644
--- a/samples/install-without-bom/pom.xml
+++ b/samples/install-without-bom/pom.xml
@@ -59,6 +59,37 @@
google-oauth-client-jetty
1.39.0
+
+ io.opentelemetry
+ opentelemetry-api
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-context
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk-common
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk-trace
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-exporter-logging
+ 1.48.0
+
+
com.google.cloud
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index 496458c70..f2c96c00d 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -39,6 +39,18 @@
UTF-8
+
+
+
+ io.opentelemetry
+ opentelemetry-bom
+ 1.48.0
+ pom
+ import
+
+
+
+
@@ -82,6 +94,36 @@
1.4.4
test
+
+ io.opentelemetry
+ opentelemetry-api
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-context
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk-common
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk-trace
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-exporter-logging
+ 1.48.0
+
diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml
index 0e32438ed..2b5dfd4bc 100644
--- a/samples/snippets/pom.xml
+++ b/samples/snippets/pom.xml
@@ -51,6 +51,13 @@
pom
import
+
+ io.opentelemetry
+ opentelemetry-bom
+ 1.48.0
+ pom
+ import
+
@@ -59,6 +66,36 @@
com.google.cloud
google-cloud-bigquery
+
+ io.opentelemetry
+ opentelemetry-api
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-context
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk-common
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-sdk-trace
+ 1.48.0
+
+
+ io.opentelemetry
+ opentelemetry-exporter-logging
+ 1.48.0
+
diff --git a/samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracing.java b/samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracing.java
new file mode 100644
index 000000000..57ec7eb71
--- /dev/null
+++ b/samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracing.java
@@ -0,0 +1,85 @@
+/*
+ * Copyright 2025 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.example.bigquery;
+
+// [START bigquery_enable_otel_tracing]
+import com.google.cloud.bigquery.BigQuery;
+import com.google.cloud.bigquery.BigQueryOptions;
+import com.google.cloud.bigquery.Dataset;
+import com.google.cloud.bigquery.DatasetInfo;
+import io.opentelemetry.api.OpenTelemetry;
+import io.opentelemetry.api.trace.Tracer;
+import io.opentelemetry.exporter.logging.LoggingSpanExporter;
+import io.opentelemetry.sdk.OpenTelemetrySdk;
+import io.opentelemetry.sdk.trace.SdkTracerProvider;
+import io.opentelemetry.sdk.trace.export.SimpleSpanProcessor;
+import io.opentelemetry.sdk.trace.samplers.Sampler;
+import java.util.logging.ConsoleHandler;
+import java.util.logging.Logger;
+
+public class EnableOpenTelemetryTracing {
+ private static final Logger log = Logger.getLogger(EnableOpenTelemetryTracing.class.getName());
+
+ public static void main(String[] args) {
+ // Set logging to System.err.
+ ConsoleHandler ch = new ConsoleHandler();
+ log.addHandler(ch);
+
+ // TODO(developer): Replace values before running the sample.
+ final String tracerName = "Sample Tracer";
+ final String datasetId = "sampleDatasetId";
+
+ // Create TracerProvider that exports to a logger.
+ SdkTracerProvider tracerProvider =
+ SdkTracerProvider.builder()
+ .addSpanProcessor(SimpleSpanProcessor.builder(LoggingSpanExporter.create()).build())
+ .setSampler(Sampler.alwaysOn())
+ .build();
+
+ // Create global OpenTelemetry instance using the TracerProvider.
+ OpenTelemetry otel = OpenTelemetrySdk.builder().setTracerProvider(tracerProvider).build();
+
+ // Create Tracer instance from the OpenTelemetry object. Tracers are used to create
+ // Spans. There can be multiple Tracers in an OpenTelemetry instance.
+ Tracer tracer = otel.getTracer(tracerName);
+
+ enableOpenTelemetry(tracer, datasetId);
+ }
+
+ public static void enableOpenTelemetry(Tracer tracer, String datasetId) {
+ // Create BigQuery client to trace. EnableOpenTelemetryTracing and OpenTelemetryTracer must
+ // be set to enable tracing.
+ BigQueryOptions otelOptions =
+ BigQueryOptions.newBuilder()
+ .setEnableOpenTelemetryTracing(true)
+ .setOpenTelemetryTracer(tracer)
+ .build();
+ BigQuery bigquery = otelOptions.getService();
+
+ try {
+ // Create dataset.
+ DatasetInfo info = DatasetInfo.newBuilder(datasetId).build();
+ Dataset dataset = bigquery.create(info);
+ } catch (Exception e) {
+ System.out.println(
+ String.format("Failed to create dataset: %s: %s", e.toString(), e.getMessage()));
+ } finally {
+ bigquery.delete(datasetId);
+ }
+ }
+}
+// [END bigquery_enable_otel_tracing]
diff --git a/samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpan.java b/samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpan.java
new file mode 100644
index 000000000..af69df10b
--- /dev/null
+++ b/samples/snippets/src/main/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpan.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright 2025 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.example.bigquery;
+
+// [START bigquery_enable_otel_tracing_with_parent_span]
+import com.google.cloud.bigquery.BigQuery;
+import com.google.cloud.bigquery.BigQueryOptions;
+import com.google.cloud.bigquery.Dataset;
+import com.google.cloud.bigquery.DatasetInfo;
+import io.opentelemetry.api.OpenTelemetry;
+import io.opentelemetry.api.trace.Span;
+import io.opentelemetry.api.trace.Tracer;
+import io.opentelemetry.context.Scope;
+import io.opentelemetry.exporter.logging.LoggingSpanExporter;
+import io.opentelemetry.sdk.OpenTelemetrySdk;
+import io.opentelemetry.sdk.trace.SdkTracerProvider;
+import io.opentelemetry.sdk.trace.export.SimpleSpanProcessor;
+import io.opentelemetry.sdk.trace.samplers.Sampler;
+import java.time.LocalDate;
+import java.util.logging.ConsoleHandler;
+import java.util.logging.Logger;
+
+public class EnableOpenTelemetryTracingWithParentSpan {
+ private static final Logger log =
+ Logger.getLogger(EnableOpenTelemetryTracingWithParentSpan.class.getName());
+
+ public static void main(String[] args) {
+ // Set logging to System.err.
+ ConsoleHandler ch = new ConsoleHandler();
+ log.addHandler(ch);
+
+ // TODO(developer): Replace values before running the sample.
+ final String tracerName = "Sample Tracer";
+ final String parentSpanName = "Sample Parent Span";
+ final String datasetId = "sampleDatasetId";
+
+ // Create TracerProvider that exports to a logger.
+ SdkTracerProvider tracerProvider =
+ SdkTracerProvider.builder()
+ .addSpanProcessor(SimpleSpanProcessor.builder(LoggingSpanExporter.create()).build())
+ .setSampler(Sampler.alwaysOn())
+ .build();
+
+ // Create OpenTelemetry instance using the TracerProvider.
+ OpenTelemetry otel = OpenTelemetrySdk.builder().setTracerProvider(tracerProvider).build();
+
+ // Create Tracer instance from the global OpenTelemetry object. Tracers are used to create
+ // Spans. There can be multiple Tracers in a global OpenTelemetry instance.
+ final Tracer tracer = otel.getTracer(tracerName);
+ enableOpenTelemetryWithParentSpan(tracer, parentSpanName, datasetId);
+ }
+
+ public static void enableOpenTelemetryWithParentSpan(
+ Tracer tracer, String parentSpanName, String datasetId) {
+ // Create BigQuery client to trace. EnableOpenTelemetryTracing and OpenTelemetryTracer must
+ // be set to enable tracing.
+ BigQueryOptions otelOptions =
+ BigQueryOptions.newBuilder()
+ .setEnableOpenTelemetryTracing(true)
+ .setOpenTelemetryTracer(tracer)
+ .build();
+ BigQuery bigquery = otelOptions.getService();
+
+ LocalDate currentDate = LocalDate.now();
+
+ // Create the root parent Span. setNoParent() ensures that it is a parent Span with a Span ID
+ // of 0.
+ Span parentSpan =
+ tracer
+ .spanBuilder(parentSpanName)
+ .setNoParent()
+ .setAttribute("current_date", currentDate.toString())
+ .startSpan();
+
+ // The Span Context is automatically passed on to any functions called within the scope of the
+ // try block. parentSpan.makeCurrent() sets parentSpan to be the parent of any Spans created in
+ // this scope, or the scope of any functions called within this scope.
+ try (Scope parentScope = parentSpan.makeCurrent()) {
+ DatasetInfo info = DatasetInfo.newBuilder(datasetId).build();
+ Dataset dataset = bigquery.create(info);
+ } catch (Exception e) {
+ System.out.println(
+ String.format("Failed to create dataset: %s: %s", e.toString(), e.getMessage()));
+ } finally {
+ // finally block ensures that Spans are cleaned up properly.
+ parentSpan.end();
+ bigquery.delete(datasetId);
+ }
+ }
+}
+// [END bigquery_enable_otel_tracing_with_parent_span]
diff --git a/samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingIT.java b/samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingIT.java
new file mode 100644
index 000000000..0ad565101
--- /dev/null
+++ b/samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingIT.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright 2025 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.example.bigquery;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import com.google.cloud.bigquery.testing.RemoteBigQueryHelper;
+import io.opentelemetry.api.OpenTelemetry;
+import io.opentelemetry.api.trace.Tracer;
+import io.opentelemetry.sdk.OpenTelemetrySdk;
+import io.opentelemetry.sdk.common.CompletableResultCode;
+import io.opentelemetry.sdk.trace.SdkTracerProvider;
+import io.opentelemetry.sdk.trace.data.SpanData;
+import io.opentelemetry.sdk.trace.export.SimpleSpanProcessor;
+import io.opentelemetry.sdk.trace.samplers.Sampler;
+import java.io.ByteArrayOutputStream;
+import java.io.PrintStream;
+import java.util.Collection;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+public class EnableOpenTelemetryTracingIT {
+ private final Logger log = Logger.getLogger(this.getClass().getName());
+ private ByteArrayOutputStream bout;
+ private PrintStream out;
+ private PrintStream originalPrintStream;
+
+ private static class ConsoleSpanExporter
+ implements io.opentelemetry.sdk.trace.export.SpanExporter {
+ @Override
+ public CompletableResultCode export(Collection collection) {
+ if (collection.isEmpty()) {
+ return CompletableResultCode.ofFailure();
+ }
+ for (SpanData data : collection) {
+ System.out.println(data);
+ }
+ return CompletableResultCode.ofSuccess();
+ }
+
+ @Override
+ public CompletableResultCode flush() {
+ return CompletableResultCode.ofSuccess();
+ }
+
+ @Override
+ public CompletableResultCode shutdown() {
+ return CompletableResultCode.ofSuccess();
+ }
+ }
+
+ @Before
+ public void setUp() {
+ bout = new ByteArrayOutputStream();
+ out = new PrintStream(bout);
+ originalPrintStream = System.out;
+ System.setOut(out);
+ }
+
+ @After
+ public void tearDown() {
+ // restores print statements in the original method
+ System.out.flush();
+ System.setOut(originalPrintStream);
+ log.log(Level.INFO, "\n" + bout.toString());
+ }
+
+ @Test
+ public void testEnableOpenTelemetryTracing() {
+ final String tracerName = "testSampleTracer";
+ final String datasetId = RemoteBigQueryHelper.generateDatasetName();
+
+ SdkTracerProvider tracerProvider =
+ SdkTracerProvider.builder()
+ .addSpanProcessor(SimpleSpanProcessor.builder(new ConsoleSpanExporter()).build())
+ .setSampler(Sampler.alwaysOn())
+ .build();
+
+ OpenTelemetry otel = OpenTelemetrySdk.builder().setTracerProvider(tracerProvider).build();
+
+ final Tracer tracer = otel.getTracer(tracerName);
+
+ EnableOpenTelemetryTracing.enableOpenTelemetry(tracer, datasetId);
+
+ assertThat(bout.toString()).contains("com.google.cloud.bigquery.BigQuery.createDataset");
+ assertThat(bout.toString()).contains("com.google.cloud.bigquery.BigQuery.deleteDataset");
+ }
+}
diff --git a/samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpanIT.java b/samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpanIT.java
new file mode 100644
index 000000000..482915008
--- /dev/null
+++ b/samples/snippets/src/test/java/com/example/bigquery/EnableOpenTelemetryTracingWithParentSpanIT.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright 2025 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.example.bigquery;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import com.google.cloud.bigquery.testing.RemoteBigQueryHelper;
+import io.opentelemetry.api.OpenTelemetry;
+import io.opentelemetry.api.trace.Tracer;
+import io.opentelemetry.sdk.OpenTelemetrySdk;
+import io.opentelemetry.sdk.common.CompletableResultCode;
+import io.opentelemetry.sdk.trace.SdkTracerProvider;
+import io.opentelemetry.sdk.trace.data.SpanData;
+import io.opentelemetry.sdk.trace.export.SimpleSpanProcessor;
+import io.opentelemetry.sdk.trace.samplers.Sampler;
+import java.io.ByteArrayOutputStream;
+import java.io.PrintStream;
+import java.time.LocalDate;
+import java.util.Collection;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+public class EnableOpenTelemetryTracingWithParentSpanIT {
+ private final Logger log = Logger.getLogger(this.getClass().getName());
+ private ByteArrayOutputStream bout;
+ private PrintStream out;
+ private PrintStream originalPrintStream;
+
+ private static class ConsoleSpanExporter
+ implements io.opentelemetry.sdk.trace.export.SpanExporter {
+ @Override
+ public CompletableResultCode export(Collection collection) {
+ if (collection.isEmpty()) {
+ return CompletableResultCode.ofFailure();
+ }
+ for (SpanData data : collection) {
+ System.out.println(data);
+ }
+ return CompletableResultCode.ofSuccess();
+ }
+
+ @Override
+ public CompletableResultCode flush() {
+ return CompletableResultCode.ofSuccess();
+ }
+
+ @Override
+ public CompletableResultCode shutdown() {
+ return CompletableResultCode.ofSuccess();
+ }
+ }
+
+ @Before
+ public void setUp() {
+ bout = new ByteArrayOutputStream();
+ out = new PrintStream(bout);
+ originalPrintStream = System.out;
+ System.setOut(out);
+ }
+
+ @After
+ public void tearDown() {
+ // restores print statements in the original method
+ System.out.flush();
+ System.setOut(originalPrintStream);
+ log.log(Level.INFO, "\n" + bout.toString());
+ }
+
+ @Test
+ public void testEnableOpenTelemetryWithParentSpan() {
+ final String tracerName = "testSampleTracer";
+ final String parentSpanName = "testSampleParentSpan";
+ final String datasetId = RemoteBigQueryHelper.generateDatasetName();
+ final LocalDate currentDate = LocalDate.now();
+
+ SdkTracerProvider tracerProvider =
+ SdkTracerProvider.builder()
+ .addSpanProcessor(SimpleSpanProcessor.builder(new ConsoleSpanExporter()).build())
+ .setSampler(Sampler.alwaysOn())
+ .build();
+
+ OpenTelemetry otel = OpenTelemetrySdk.builder().setTracerProvider(tracerProvider).build();
+
+ final Tracer tracer = otel.getTracer(tracerName);
+
+ EnableOpenTelemetryTracingWithParentSpan.enableOpenTelemetryWithParentSpan(
+ tracer, parentSpanName, datasetId);
+
+ assertThat(bout.toString()).contains(parentSpanName);
+ assertThat(bout.toString())
+ .contains(String.format("AttributesMap{data={current_date=%s}", currentDate.toString()));
+ }
+}
From aa3d10bc7f1f44f2e92ee631da8056aa762b25e3 Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Fri, 25 Jul 2025 03:48:02 +0200
Subject: [PATCH 09/19] test(deps): update dependency
com.google.cloud:google-cloud-storage to v2.53.3 (#3882)
---
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index 850b288e5..e0e3aa024 100644
--- a/pom.xml
+++ b/pom.xml
@@ -137,7 +137,7 @@
com.google.cloud
google-cloud-storage
- 2.53.2
+ 2.53.3
test
From 4071e4cb2547b236183fd4fbb92c73f074cf2fa0 Mon Sep 17 00:00:00 2001
From: Liam Huffman <44932470+whuffman36@users.noreply.github.com>
Date: Fri, 25 Jul 2025 09:06:15 -0700
Subject: [PATCH 10/19] feat(bigquery): Add otel metrics to request headers
(#3900)
---
.../bigquery/spi/v2/HttpBigQueryRpc.java | 147 +++++++++++++++++-
1 file changed, 142 insertions(+), 5 deletions(-)
diff --git a/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/spi/v2/HttpBigQueryRpc.java b/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/spi/v2/HttpBigQueryRpc.java
index 9d89435ea..16737dc4b 100644
--- a/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/spi/v2/HttpBigQueryRpc.java
+++ b/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/spi/v2/HttpBigQueryRpc.java
@@ -158,6 +158,9 @@ public Dataset getDatasetSkipExceptionTranslation(
if (options.containsKey(Option.DATASET_VIEW)) {
bqGetRequest.setDatasetView(options.get(Option.DATASET_VIEW).toString());
}
+ bqGetRequest
+ .getRequestHeaders()
+ .set("x-goog-otel-enabled", this.options.isOpenTelemetryTracingEnabled());
Span getDataset = null;
if (this.options.isOpenTelemetryTracingEnabled()
@@ -205,6 +208,10 @@ public Tuple> listDatasetsSkipExceptionTranslation(
.setMaxResults(Option.MAX_RESULTS.getLong(options))
.setPageToken(Option.PAGE_TOKEN.getString(options));
+ datasetsListRequest
+ .getRequestHeaders()
+ .set("x-goog-otel-enabled", this.options.isOpenTelemetryTracingEnabled());
+
Span listDatasets = null;
if (this.options.isOpenTelemetryTracingEnabled()
&& this.options.getOpenTelemetryTracer() != null) {
@@ -256,6 +263,9 @@ public Dataset createSkipExceptionTranslation(Dataset dataset, Map
From e6453bf08cb822e820ffeb9ee3bd43cfcf2d4d15 Mon Sep 17 00:00:00 2001
From: Phong Chuong <147636638+PhongChuong@users.noreply.github.com>
Date: Wed, 30 Jul 2025 23:03:23 -0400
Subject: [PATCH 16/19] =?UTF-8?q?chore(samples):=20update=20sample=20open?=
=?UTF-8?q?=20telemetry=20dep=20to=20reduce=20#=20of=20renov=E2=80=A6=20(#?=
=?UTF-8?q?3911)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* chore(samples): update sample open telemetry dep to reduce # of renovate-bot PRs
* fix extra dep
---
samples/install-without-bom/pom.xml | 13 +++++++------
samples/snapshot/pom.xml | 6 ------
samples/snippets/pom.xml | 6 ------
3 files changed, 7 insertions(+), 18 deletions(-)
diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml
index 4bc7f7a2b..7cd683afd 100644
--- a/samples/install-without-bom/pom.xml
+++ b/samples/install-without-bom/pom.xml
@@ -37,6 +37,7 @@
1.8
1.8
UTF-8
+ 1.52.0
@@ -62,32 +63,32 @@
io.opentelemetry
opentelemetry-api
- 1.52.0
+ ${opentelemetry.version}
io.opentelemetry
opentelemetry-context
- 1.52.0
+ ${opentelemetry.version}
io.opentelemetry
opentelemetry-sdk
- 1.48.0
+ ${opentelemetry.version}
io.opentelemetry
opentelemetry-sdk-common
- 1.48.0
+ ${opentelemetry.version}
io.opentelemetry
opentelemetry-sdk-trace
- 1.48.0
+ ${opentelemetry.version}
io.opentelemetry
opentelemetry-exporter-logging
- 1.52.0
+ ${opentelemetry.version}
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index 7e2a08cab..f94d4c4c1 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -97,32 +97,26 @@
io.opentelemetry
opentelemetry-api
- 1.52.0
io.opentelemetry
opentelemetry-context
- 1.52.0
io.opentelemetry
opentelemetry-sdk
- 1.48.0
io.opentelemetry
opentelemetry-sdk-common
- 1.48.0
io.opentelemetry
opentelemetry-sdk-trace
- 1.48.0
io.opentelemetry
opentelemetry-exporter-logging
- 1.52.0
diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml
index da5d031b5..d6f779c24 100644
--- a/samples/snippets/pom.xml
+++ b/samples/snippets/pom.xml
@@ -69,32 +69,26 @@
io.opentelemetry
opentelemetry-api
- 1.52.0
io.opentelemetry
opentelemetry-context
- 1.52.0
io.opentelemetry
opentelemetry-sdk
- 1.48.0
io.opentelemetry
opentelemetry-sdk-common
- 1.48.0
io.opentelemetry
opentelemetry-sdk-trace
- 1.48.0
io.opentelemetry
opentelemetry-exporter-logging
- 1.52.0
From 82056237f194a6c99ec4fb3a4315023efdedff1b Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Thu, 31 Jul 2025 16:14:46 +0200
Subject: [PATCH 17/19] deps: update dependency
com.google.cloud:sdk-platform-java-config to v3.50.2 (#3901)
---
.github/workflows/unmanaged_dependency_check.yaml | 2 +-
.kokoro/continuous/graalvm-native-a.cfg | 2 +-
.kokoro/continuous/graalvm-native-b.cfg | 2 +-
.kokoro/continuous/graalvm-native-c.cfg | 2 +-
.kokoro/presubmit/graalvm-native-a.cfg | 2 +-
.kokoro/presubmit/graalvm-native-b.cfg | 2 +-
.kokoro/presubmit/graalvm-native-c.cfg | 2 +-
google-cloud-bigquery-bom/pom.xml | 2 +-
pom.xml | 2 +-
9 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml
index 1795d3b24..6d5c25a0c 100644
--- a/.github/workflows/unmanaged_dependency_check.yaml
+++ b/.github/workflows/unmanaged_dependency_check.yaml
@@ -17,7 +17,7 @@ jobs:
# repository
.kokoro/build.sh
- name: Unmanaged dependency check
- uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.50.1
+ uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.50.2
with:
# java-bigquery does not produce a BOM. Fortunately the root pom.xml
# defines google-cloud-bigquery in dependencyManagement section. So
diff --git a/.kokoro/continuous/graalvm-native-a.cfg b/.kokoro/continuous/graalvm-native-a.cfg
index 13d12ce34..bfe47cf7d 100644
--- a/.kokoro/continuous/graalvm-native-a.cfg
+++ b/.kokoro/continuous/graalvm-native-a.cfg
@@ -3,7 +3,7 @@
# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
- value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.50.1"
+ value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.50.2"
}
env_vars: {
diff --git a/.kokoro/continuous/graalvm-native-b.cfg b/.kokoro/continuous/graalvm-native-b.cfg
index 4696d04ef..603c54174 100644
--- a/.kokoro/continuous/graalvm-native-b.cfg
+++ b/.kokoro/continuous/graalvm-native-b.cfg
@@ -3,7 +3,7 @@
# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
- value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.50.1"
+ value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.50.2"
}
env_vars: {
diff --git a/.kokoro/continuous/graalvm-native-c.cfg b/.kokoro/continuous/graalvm-native-c.cfg
index 26d39a747..6b35d89de 100644
--- a/.kokoro/continuous/graalvm-native-c.cfg
+++ b/.kokoro/continuous/graalvm-native-c.cfg
@@ -3,7 +3,7 @@
# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
- value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.50.1"
+ value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.50.2"
}
env_vars: {
diff --git a/.kokoro/presubmit/graalvm-native-a.cfg b/.kokoro/presubmit/graalvm-native-a.cfg
index 13d12ce34..bfe47cf7d 100644
--- a/.kokoro/presubmit/graalvm-native-a.cfg
+++ b/.kokoro/presubmit/graalvm-native-a.cfg
@@ -3,7 +3,7 @@
# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
- value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.50.1"
+ value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.50.2"
}
env_vars: {
diff --git a/.kokoro/presubmit/graalvm-native-b.cfg b/.kokoro/presubmit/graalvm-native-b.cfg
index 4696d04ef..603c54174 100644
--- a/.kokoro/presubmit/graalvm-native-b.cfg
+++ b/.kokoro/presubmit/graalvm-native-b.cfg
@@ -3,7 +3,7 @@
# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
- value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.50.1"
+ value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.50.2"
}
env_vars: {
diff --git a/.kokoro/presubmit/graalvm-native-c.cfg b/.kokoro/presubmit/graalvm-native-c.cfg
index 26d39a747..6b35d89de 100644
--- a/.kokoro/presubmit/graalvm-native-c.cfg
+++ b/.kokoro/presubmit/graalvm-native-c.cfg
@@ -3,7 +3,7 @@
# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
- value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.50.1"
+ value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.50.2"
}
env_vars: {
diff --git a/google-cloud-bigquery-bom/pom.xml b/google-cloud-bigquery-bom/pom.xml
index c41c4c601..90111de1a 100644
--- a/google-cloud-bigquery-bom/pom.xml
+++ b/google-cloud-bigquery-bom/pom.xml
@@ -8,7 +8,7 @@
com.google.cloud
sdk-platform-java-config
- 3.50.1
+ 3.50.2
diff --git a/pom.xml b/pom.xml
index 79a2629d0..7304158de 100644
--- a/pom.xml
+++ b/pom.xml
@@ -14,7 +14,7 @@
com.google.cloud
sdk-platform-java-config
- 3.50.1
+ 3.50.2
From bb6f6dcb90b1ddf72e630c4dc64737cf2c2ebd2e Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Thu, 31 Jul 2025 17:32:25 +0200
Subject: [PATCH 18/19] chore(deps): update dependency
com.google.cloud:google-cloud-bigquerystorage-bom to v3.16.1 (#3912)
---
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index 7304158de..e0d9c5550 100644
--- a/pom.xml
+++ b/pom.xml
@@ -71,7 +71,7 @@
com.google.cloud
google-cloud-bigquerystorage-bom
- 3.16.0
+ 3.16.1
pom
import
From 548f5b6bbb71f949ad4d1560ab28e72708e31919 Mon Sep 17 00:00:00 2001
From: "release-please[bot]"
<55107282+release-please[bot]@users.noreply.github.com>
Date: Thu, 31 Jul 2025 17:28:28 -0400
Subject: [PATCH 19/19] chore(main): release 2.54.0 (#3892)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
---
CHANGELOG.md | 19 +++++++++++++++++++
benchmark/pom.xml | 2 +-
google-cloud-bigquery-bom/pom.xml | 4 ++--
google-cloud-bigquery/pom.xml | 4 ++--
pom.xml | 4 ++--
samples/snapshot/pom.xml | 2 +-
versions.txt | 2 +-
7 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9336a4195..147b9c589 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,24 @@
# Changelog
+## [2.54.0](https://github.com/googleapis/java-bigquery/compare/v2.53.0...v2.54.0) (2025-07-31)
+
+
+### Features
+
+* **bigquery:** Add OpenTelemetry Samples ([#3899](https://github.com/googleapis/java-bigquery/issues/3899)) ([e3d9ed9](https://github.com/googleapis/java-bigquery/commit/e3d9ed92ca5d9b58b5747960d74f895ed8733ebf))
+* **bigquery:** Add otel metrics to request headers ([#3900](https://github.com/googleapis/java-bigquery/issues/3900)) ([4071e4c](https://github.com/googleapis/java-bigquery/commit/4071e4cb2547b236183fd4fbb92c73f074cf2fa0))
+
+
+### Dependencies
+
+* Update dependency com.google.api.grpc:proto-google-cloud-bigqueryconnection-v1 to v2.70.0 ([#3890](https://github.com/googleapis/java-bigquery/issues/3890)) ([84207e2](https://github.com/googleapis/java-bigquery/commit/84207e297eec75bcb4f1cc1b64423d7c2ddd6c30))
+* Update dependency com.google.apis:google-api-services-bigquery to v2-rev20250706-2.0.0 ([#3910](https://github.com/googleapis/java-bigquery/issues/3910)) ([ae5c971](https://github.com/googleapis/java-bigquery/commit/ae5c97146c7076e90c000fd98b797ec8e08a9cd8))
+* Update dependency com.google.cloud:sdk-platform-java-config to v3.50.2 ([#3901](https://github.com/googleapis/java-bigquery/issues/3901)) ([8205623](https://github.com/googleapis/java-bigquery/commit/82056237f194a6c99ec4fb3a4315023efdedff1b))
+* Update dependency io.opentelemetry:opentelemetry-api to v1.52.0 ([#3902](https://github.com/googleapis/java-bigquery/issues/3902)) ([772407b](https://github.com/googleapis/java-bigquery/commit/772407b12f4da005f79eafc944d4c53f0eec5c27))
+* Update dependency io.opentelemetry:opentelemetry-bom to v1.52.0 ([#3903](https://github.com/googleapis/java-bigquery/issues/3903)) ([509a6fc](https://github.com/googleapis/java-bigquery/commit/509a6fc0bb7e7a101bf0d4334a3ff1adde2cab09))
+* Update dependency io.opentelemetry:opentelemetry-context to v1.52.0 ([#3904](https://github.com/googleapis/java-bigquery/issues/3904)) ([96c1bae](https://github.com/googleapis/java-bigquery/commit/96c1bae0fcdfdfc2dbb25dcae5007c5d02111a8c))
+* Update dependency io.opentelemetry:opentelemetry-exporter-logging to v1.52.0 ([#3905](https://github.com/googleapis/java-bigquery/issues/3905)) ([28ee4c9](https://github.com/googleapis/java-bigquery/commit/28ee4c941b99b1fe3803aefbe7a8ae57100d76cb))
+
## [2.53.0](https://github.com/googleapis/java-bigquery/compare/v2.52.0...v2.53.0) (2025-07-14)
diff --git a/benchmark/pom.xml b/benchmark/pom.xml
index 9352cc46f..5f875493d 100644
--- a/benchmark/pom.xml
+++ b/benchmark/pom.xml
@@ -6,7 +6,7 @@
google-cloud-bigquery-parent
com.google.cloud
- 2.53.1-SNAPSHOT
+ 2.54.0
diff --git a/google-cloud-bigquery-bom/pom.xml b/google-cloud-bigquery-bom/pom.xml
index 90111de1a..cefddd199 100644
--- a/google-cloud-bigquery-bom/pom.xml
+++ b/google-cloud-bigquery-bom/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-bigquery-bom
- 2.53.1-SNAPSHOT
+ 2.54.0
pom
com.google.cloud
@@ -54,7 +54,7 @@
com.google.cloud
google-cloud-bigquery
- 2.53.1-SNAPSHOT
+ 2.54.0
diff --git a/google-cloud-bigquery/pom.xml b/google-cloud-bigquery/pom.xml
index b3f4461a0..058a06caa 100644
--- a/google-cloud-bigquery/pom.xml
+++ b/google-cloud-bigquery/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-bigquery
- 2.53.1-SNAPSHOT
+ 2.54.0
jar
BigQuery
https://github.com/googleapis/java-bigquery
@@ -11,7 +11,7 @@
com.google.cloud
google-cloud-bigquery-parent
- 2.53.1-SNAPSHOT
+ 2.54.0
google-cloud-bigquery
diff --git a/pom.xml b/pom.xml
index e0d9c5550..534e91a49 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-cloud-bigquery-parent
pom
- 2.53.1-SNAPSHOT
+ 2.54.0
BigQuery Parent
https://github.com/googleapis/java-bigquery
@@ -93,7 +93,7 @@
com.google.cloud
google-cloud-bigquery
- 2.53.1-SNAPSHOT
+ 2.54.0
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index f94d4c4c1..186090714 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -56,7 +56,7 @@
com.google.cloud
google-cloud-bigquery
- 2.53.1-SNAPSHOT
+ 2.54.0
diff --git a/versions.txt b/versions.txt
index 73c78399e..f0fee808c 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,4 +1,4 @@
# Format:
# module:released-version:current-version
-google-cloud-bigquery:2.53.0:2.53.1-SNAPSHOT
\ No newline at end of file
+google-cloud-bigquery:2.54.0:2.54.0
\ No newline at end of file