From cf4f9ea21eee4c260ab4be4ccfe57d277fde90de Mon Sep 17 00:00:00 2001
From: "release-please[bot]"
<55107282+release-please[bot]@users.noreply.github.com>
Date: Mon, 29 Apr 2024 16:46:19 +0000
Subject: [PATCH 1/5] chore(main): release 2.39.1-SNAPSHOT (#2217)
:robot: I have created a release *beep* *boop*
---
### Updating meta-information for bleeding-edge SNAPSHOT release.
---
This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please).
---
google-cloud-bigtable-bom/pom.xml | 18 +++++++++---------
google-cloud-bigtable-deps-bom/pom.xml | 2 +-
google-cloud-bigtable-emulator-core/pom.xml | 4 ++--
google-cloud-bigtable-emulator/pom.xml | 10 +++++-----
google-cloud-bigtable/pom.xml | 10 +++++-----
.../com/google/cloud/bigtable/Version.java | 2 +-
grpc-google-cloud-bigtable-admin-v2/pom.xml | 8 ++++----
grpc-google-cloud-bigtable-v2/pom.xml | 8 ++++----
pom.xml | 12 ++++++------
proto-google-cloud-bigtable-admin-v2/pom.xml | 8 ++++----
proto-google-cloud-bigtable-v2/pom.xml | 8 ++++----
samples/snapshot/pom.xml | 2 +-
test-proxy/pom.xml | 4 ++--
versions.txt | 14 +++++++-------
14 files changed, 55 insertions(+), 55 deletions(-)
diff --git a/google-cloud-bigtable-bom/pom.xml b/google-cloud-bigtable-bom/pom.xml
index a0c573a020..77b87a55a8 100644
--- a/google-cloud-bigtable-bom/pom.xml
+++ b/google-cloud-bigtable-bom/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-bigtable-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
com.google.cloud
@@ -63,42 +63,42 @@
com.google.cloud
google-cloud-bigtable
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.cloud
google-cloud-bigtable-emulator
- 0.176.0
+ 0.176.1-SNAPSHOT
com.google.cloud
google-cloud-bigtable-emulator-core
- 0.176.0
+ 0.176.1-SNAPSHOT
com.google.api.grpc
grpc-google-cloud-bigtable-admin-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.api.grpc
grpc-google-cloud-bigtable-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.api.grpc
proto-google-cloud-bigtable-admin-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.api.grpc
proto-google-cloud-bigtable-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.cloud
google-cloud-bigtable-stats
- 2.39.0
+ 2.39.1-SNAPSHOT
diff --git a/google-cloud-bigtable-deps-bom/pom.xml b/google-cloud-bigtable-deps-bom/pom.xml
index d70d90adce..11acad1f9d 100644
--- a/google-cloud-bigtable-deps-bom/pom.xml
+++ b/google-cloud-bigtable-deps-bom/pom.xml
@@ -13,7 +13,7 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
diff --git a/google-cloud-bigtable-emulator-core/pom.xml b/google-cloud-bigtable-emulator-core/pom.xml
index bda611ffad..4f9f2bd8dc 100644
--- a/google-cloud-bigtable-emulator-core/pom.xml
+++ b/google-cloud-bigtable-emulator-core/pom.xml
@@ -7,11 +7,11 @@
google-cloud-bigtable-parent
com.google.cloud
- 2.39.0
+ 2.39.1-SNAPSHOT
google-cloud-bigtable-emulator-core
- 0.176.0
+ 0.176.1-SNAPSHOT
A Java wrapper for the Cloud Bigtable emulator.
diff --git a/google-cloud-bigtable-emulator/pom.xml b/google-cloud-bigtable-emulator/pom.xml
index 541ddfd242..a206f2b758 100644
--- a/google-cloud-bigtable-emulator/pom.xml
+++ b/google-cloud-bigtable-emulator/pom.xml
@@ -5,7 +5,7 @@
4.0.0
google-cloud-bigtable-emulator
- 0.176.0
+ 0.176.1-SNAPSHOT
Google Cloud Java - Bigtable Emulator
https://github.com/googleapis/java-bigtable
@@ -14,7 +14,7 @@
com.google.cloud
google-cloud-bigtable-parent
- 2.39.0
+ 2.39.1-SNAPSHOT
scm:git:git@github.com:googleapis/java-bigtable.git
@@ -81,14 +81,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
@@ -99,7 +99,7 @@
com.google.cloud
google-cloud-bigtable-emulator-core
- 0.176.0
+ 0.176.1-SNAPSHOT
diff --git a/google-cloud-bigtable/pom.xml b/google-cloud-bigtable/pom.xml
index 418d408cbf..25b579492a 100644
--- a/google-cloud-bigtable/pom.xml
+++ b/google-cloud-bigtable/pom.xml
@@ -2,7 +2,7 @@
4.0.0
google-cloud-bigtable
- 2.39.0
+ 2.39.1-SNAPSHOT
jar
Google Cloud Bigtable
https://github.com/googleapis/java-bigtable
@@ -12,11 +12,11 @@
com.google.cloud
google-cloud-bigtable-parent
- 2.39.0
+ 2.39.1-SNAPSHOT
- 2.39.0
+ 2.39.1-SNAPSHOT
google-cloud-bigtable
@@ -47,14 +47,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java
index abe7e99cdb..cfb6dede0f 100644
--- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java
+++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java
@@ -20,6 +20,6 @@
@InternalApi("For internal use only")
public final class Version {
// {x-version-update-start:google-cloud-bigtable:current}
- public static String VERSION = "2.39.0";
+ public static String VERSION = "2.39.1-SNAPSHOT";
// {x-version-update-end}
}
diff --git a/grpc-google-cloud-bigtable-admin-v2/pom.xml b/grpc-google-cloud-bigtable-admin-v2/pom.xml
index f0797849e2..24626b9ad7 100644
--- a/grpc-google-cloud-bigtable-admin-v2/pom.xml
+++ b/grpc-google-cloud-bigtable-admin-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-cloud-bigtable-admin-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
grpc-google-cloud-bigtable-admin-v2
GRPC library for grpc-google-cloud-bigtable-admin-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.0
+ 2.39.1-SNAPSHOT
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
diff --git a/grpc-google-cloud-bigtable-v2/pom.xml b/grpc-google-cloud-bigtable-v2/pom.xml
index 894bfa0143..471564257a 100644
--- a/grpc-google-cloud-bigtable-v2/pom.xml
+++ b/grpc-google-cloud-bigtable-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-cloud-bigtable-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
grpc-google-cloud-bigtable-v2
GRPC library for grpc-google-cloud-bigtable-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.0
+ 2.39.1-SNAPSHOT
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
diff --git a/pom.xml b/pom.xml
index 8d06d4aef8..9d927fd0cb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
google-cloud-bigtable-parent
pom
- 2.39.0
+ 2.39.1-SNAPSHOT
Google Cloud Bigtable Parent
https://github.com/googleapis/java-bigtable
@@ -153,27 +153,27 @@
com.google.api.grpc
proto-google-cloud-bigtable-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.api.grpc
proto-google-cloud-bigtable-admin-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.api.grpc
grpc-google-cloud-bigtable-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.api.grpc
grpc-google-cloud-bigtable-admin-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
com.google.cloud
google-cloud-bigtable
- 2.39.0
+ 2.39.1-SNAPSHOT
diff --git a/proto-google-cloud-bigtable-admin-v2/pom.xml b/proto-google-cloud-bigtable-admin-v2/pom.xml
index 226fa0471e..b401504491 100644
--- a/proto-google-cloud-bigtable-admin-v2/pom.xml
+++ b/proto-google-cloud-bigtable-admin-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-cloud-bigtable-admin-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
proto-google-cloud-bigtable-admin-v2
PROTO library for proto-google-cloud-bigtable-admin-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.0
+ 2.39.1-SNAPSHOT
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
diff --git a/proto-google-cloud-bigtable-v2/pom.xml b/proto-google-cloud-bigtable-v2/pom.xml
index d8f7a63e81..1e4a5f7ae2 100644
--- a/proto-google-cloud-bigtable-v2/pom.xml
+++ b/proto-google-cloud-bigtable-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-cloud-bigtable-v2
- 2.39.0
+ 2.39.1-SNAPSHOT
proto-google-cloud-bigtable-v2
PROTO library for proto-google-cloud-bigtable-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.0
+ 2.39.1-SNAPSHOT
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.0
+ 2.39.1-SNAPSHOT
pom
import
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index e00e06f4fb..1a4bb60d45 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -28,7 +28,7 @@
com.google.cloud
google-cloud-bigtable
- 2.39.0
+ 2.39.1-SNAPSHOT
diff --git a/test-proxy/pom.xml b/test-proxy/pom.xml
index 224bd59471..75d41585ad 100644
--- a/test-proxy/pom.xml
+++ b/test-proxy/pom.xml
@@ -12,11 +12,11 @@
google-cloud-bigtable-parent
com.google.cloud
- 2.39.0
+ 2.39.1-SNAPSHOT
- 2.39.0
+ 2.39.1-SNAPSHOT
diff --git a/versions.txt b/versions.txt
index acfdf7e910..14590ca054 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,10 +1,10 @@
# Format:
# module:released-version:current-version
-google-cloud-bigtable:2.39.0:2.39.0
-grpc-google-cloud-bigtable-admin-v2:2.39.0:2.39.0
-grpc-google-cloud-bigtable-v2:2.39.0:2.39.0
-proto-google-cloud-bigtable-admin-v2:2.39.0:2.39.0
-proto-google-cloud-bigtable-v2:2.39.0:2.39.0
-google-cloud-bigtable-emulator:0.176.0:0.176.0
-google-cloud-bigtable-emulator-core:0.176.0:0.176.0
+google-cloud-bigtable:2.39.0:2.39.1-SNAPSHOT
+grpc-google-cloud-bigtable-admin-v2:2.39.0:2.39.1-SNAPSHOT
+grpc-google-cloud-bigtable-v2:2.39.0:2.39.1-SNAPSHOT
+proto-google-cloud-bigtable-admin-v2:2.39.0:2.39.1-SNAPSHOT
+proto-google-cloud-bigtable-v2:2.39.0:2.39.1-SNAPSHOT
+google-cloud-bigtable-emulator:0.176.0:0.176.1-SNAPSHOT
+google-cloud-bigtable-emulator-core:0.176.0:0.176.1-SNAPSHOT
From 7145864868b3f7df69f9b2db7a822f9faf903f33 Mon Sep 17 00:00:00 2001
From: Igor Bernstein
Date: Mon, 29 Apr 2024 15:34:17 -0400
Subject: [PATCH 2/5] fix: remove stale module from bom (#2218)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Change-Id: I903aa34db7114bf410eaef179de6506cebc0e108
Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
- [ ] Make sure to open an issue as a [bug/issue](https://togithub.com/googleapis/java-bigtable/issues/new/choose) before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Rollback plan is reviewed and LGTMed
- [ ] All new data plane features have a completed end to end testing plan
Fixes # ☕️
If you write sample code, please follow the [samples format](
https://togithub.com/GoogleCloudPlatform/java-docs-samples/blob/main/SAMPLE_FORMAT.md).
---
README.md | 6 +++---
google-cloud-bigtable-bom/pom.xml | 5 -----
2 files changed, 3 insertions(+), 8 deletions(-)
diff --git a/README.md b/README.md
index 50df561219..94dc8df686 100644
--- a/README.md
+++ b/README.md
@@ -57,13 +57,13 @@ implementation 'com.google.cloud:google-cloud-bigtable'
If you are using Gradle without BOM, add this to your dependencies:
```Groovy
-implementation 'com.google.cloud:google-cloud-bigtable:2.38.0'
+implementation 'com.google.cloud:google-cloud-bigtable:2.39.0'
```
If you are using SBT, add this to your dependencies:
```Scala
-libraryDependencies += "com.google.cloud" % "google-cloud-bigtable" % "2.38.0"
+libraryDependencies += "com.google.cloud" % "google-cloud-bigtable" % "2.39.0"
```
@@ -541,7 +541,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
[kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-bigtable/java11.html
[stability-image]: https://img.shields.io/badge/stability-stable-green
[maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-bigtable.svg
-[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigtable/2.38.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-bigtable/2.39.0
[authentication]: https://github.com/googleapis/google-cloud-java#authentication
[auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
[predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
diff --git a/google-cloud-bigtable-bom/pom.xml b/google-cloud-bigtable-bom/pom.xml
index 77b87a55a8..d0bb5ddb6f 100644
--- a/google-cloud-bigtable-bom/pom.xml
+++ b/google-cloud-bigtable-bom/pom.xml
@@ -95,11 +95,6 @@
proto-google-cloud-bigtable-v2
2.39.1-SNAPSHOT
-
- com.google.cloud
- google-cloud-bigtable-stats
- 2.39.1-SNAPSHOT
-
From 26d5437903d5a611f079bb659ca5924227f0aae9 Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Tue, 30 Apr 2024 18:38:23 +0200
Subject: [PATCH 3/5] chore(deps): update dependency
com.google.cloud:google-cloud-bigtable to v2.39.0 (#2219)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
[](https://renovatebot.com)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [com.google.cloud:google-cloud-bigtable](https://togithub.com/googleapis/java-bigtable) | `2.38.0` -> `2.39.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) |
---
### Release Notes
googleapis/java-bigtable (com.google.cloud:google-cloud-bigtable)
### [`v2.39.0`](https://togithub.com/googleapis/java-bigtable/blob/HEAD/CHANGELOG.md#2390-2024-04-29)
[Compare Source](https://togithub.com/googleapis/java-bigtable/compare/v2.38.0...v2.39.0)
##### Features
- Admin API changes for databoost ([#2181](https://togithub.com/googleapis/java-bigtable/issues/2181)) ([3b1886b](https://togithub.com/googleapis/java-bigtable/commit/3b1886bea79525505e41124b41985f37c490c97e))
##### Dependencies
- Update dependency com.google.cloud:gapic-libraries-bom to v1.36.0 ([#2215](https://togithub.com/googleapis/java-bigtable/issues/2215)) ([5a9259e](https://togithub.com/googleapis/java-bigtable/commit/5a9259e3c861f1ed13c84e0bb024ddda3e1dc147))
- Update shared dependencies ([#2190](https://togithub.com/googleapis/java-bigtable/issues/2190)) ([3f37d8d](https://togithub.com/googleapis/java-bigtable/commit/3f37d8da8b51a3fea56d1c462b9500ee2c244973))
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/googleapis/java-bigtable).
---
README.md | 2 +-
samples/install-without-bom/pom.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 94dc8df686..645d26193c 100644
--- a/README.md
+++ b/README.md
@@ -42,7 +42,7 @@ If you are using Maven without the BOM, add this to your dependencies:
com.google.cloud
google-cloud-bigtable
- 2.38.0
+ 2.39.0
```
diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml
index 39a64063ea..08f58f1149 100644
--- a/samples/install-without-bom/pom.xml
+++ b/samples/install-without-bom/pom.xml
@@ -29,7 +29,7 @@
com.google.cloud
google-cloud-bigtable
- 2.38.0
+ 2.39.0
From 1f9f1698339ae470d821963e1037e0132016d216 Mon Sep 17 00:00:00 2001
From: Reza Karegar
Date: Tue, 7 May 2024 22:32:18 -0400
Subject: [PATCH 4/5] fix: batch time series data when exporting client-side
metric (#2222)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* Batch time series data when exporting client-side metric to fix issue with too many distinct resources.
* Apply cleanups based on the comments.
* Revert export code changes to diagnose integration test failures.
* 🦉 Updates from OwlBot post-processor
See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
---------
Co-authored-by: Owl Bot
---
README.md | 2 +-
.../BigtableCloudMonitoringExporter.java | 49 +++++++-----
.../BigtableCloudMonitoringExporterTest.java | 76 +++++++++++++++++++
3 files changed, 107 insertions(+), 20 deletions(-)
diff --git a/README.md b/README.md
index 645d26193c..8985acbec5 100644
--- a/README.md
+++ b/README.md
@@ -50,7 +50,7 @@ If you are using Maven without the BOM, add this to your dependencies:
If you are using Gradle 5.x or later, add this to your dependencies:
```Groovy
-implementation platform('com.google.cloud:libraries-bom:26.37.0')
+implementation platform('com.google.cloud:libraries-bom:26.38.0')
implementation 'com.google.cloud:google-cloud-bigtable'
```
diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporter.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporter.java
index 9c88aa62a2..f6a2527302 100644
--- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporter.java
+++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporter.java
@@ -42,6 +42,7 @@
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Iterables;
import com.google.common.util.concurrent.MoreExecutors;
import com.google.monitoring.v3.CreateTimeSeriesRequest;
import com.google.monitoring.v3.ProjectName;
@@ -53,6 +54,7 @@
import io.opentelemetry.sdk.metrics.data.MetricData;
import io.opentelemetry.sdk.metrics.export.MetricExporter;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
@@ -85,6 +87,10 @@ public final class BigtableCloudMonitoringExporter implements MetricExporter {
private static final String APPLICATION_RESOURCE_PROJECT_ID = "project_id";
+ // This the quota limit from Cloud Monitoring. More details in
+ // https://cloud.google.com/monitoring/quotas#custom_metrics_quotas.
+ private static final int EXPORT_BATCH_SIZE_LIMIT = 200;
+
private final MetricServiceClient client;
private final String bigtableProjectId;
@@ -216,19 +222,12 @@ private CompletableResultCode exportBigtableResourceMetrics(Collection future =
- this.client.createServiceTimeSeriesCallable().futureCall(bigtableRequest);
+ ApiFuture> future = exportTimeSeries(projectName, bigtableTimeSeries);
CompletableResultCode bigtableExportCode = new CompletableResultCode();
ApiFutures.addCallback(
future,
- new ApiFutureCallback() {
+ new ApiFutureCallback>() {
@Override
public void onFailure(Throwable throwable) {
if (bigtableExportFailureLogged.compareAndSet(false, true)) {
@@ -245,7 +244,7 @@ public void onFailure(Throwable throwable) {
}
@Override
- public void onSuccess(Empty empty) {
+ public void onSuccess(List emptyList) {
// When an export succeeded reset the export failure flag to false so if there's a
// transient failure it'll be logged.
bigtableExportFailureLogged.set(false);
@@ -290,22 +289,17 @@ private CompletableResultCode exportApplicationResourceMetrics(
// Construct the request. The project id will be the project id of the detected monitored
// resource.
- ApiFuture gceOrGkeFuture;
+ ApiFuture> gceOrGkeFuture;
CompletableResultCode exportCode = new CompletableResultCode();
try {
ProjectName projectName =
ProjectName.of(applicationResource.getLabelsOrThrow(APPLICATION_RESOURCE_PROJECT_ID));
- CreateTimeSeriesRequest request =
- CreateTimeSeriesRequest.newBuilder()
- .setName(projectName.toString())
- .addAllTimeSeries(timeSeries)
- .build();
- gceOrGkeFuture = this.client.createServiceTimeSeriesCallable().futureCall(request);
+ gceOrGkeFuture = exportTimeSeries(projectName, timeSeries);
ApiFutures.addCallback(
gceOrGkeFuture,
- new ApiFutureCallback() {
+ new ApiFutureCallback>() {
@Override
public void onFailure(Throwable throwable) {
if (applicationExportFailureLogged.compareAndSet(false, true)) {
@@ -322,7 +316,7 @@ public void onFailure(Throwable throwable) {
}
@Override
- public void onSuccess(Empty empty) {
+ public void onSuccess(List emptyList) {
// When an export succeeded reset the export failure flag to false so if there's a
// transient failure it'll be logged.
applicationExportFailureLogged.set(false);
@@ -341,6 +335,23 @@ public void onSuccess(Empty empty) {
return exportCode;
}
+ private ApiFuture> exportTimeSeries(
+ ProjectName projectName, List timeSeries) {
+ List> batchResults = new ArrayList<>();
+
+ for (List batch : Iterables.partition(timeSeries, EXPORT_BATCH_SIZE_LIMIT)) {
+ CreateTimeSeriesRequest req =
+ CreateTimeSeriesRequest.newBuilder()
+ .setName(projectName.toString())
+ .addAllTimeSeries(batch)
+ .build();
+ ApiFuture f = this.client.createServiceTimeSeriesCallable().futureCall(req);
+ batchResults.add(f);
+ }
+
+ return ApiFutures.allAsList(batchResults);
+ }
+
@Override
public CompletableResultCode flush() {
if (lastExportCode != null) {
diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporterTest.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporterTest.java
index a0b9c058dc..81629e2d9d 100644
--- a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporterTest.java
+++ b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableCloudMonitoringExporterTest.java
@@ -50,7 +50,9 @@
import io.opentelemetry.sdk.metrics.internal.data.ImmutableMetricData;
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
import io.opentelemetry.sdk.resources.Resource;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
@@ -220,6 +222,80 @@ public void testExportingHistogramData() {
assertThat(timeSeries.getPoints(0).getInterval().getEndTime().getNanos()).isEqualTo(endEpoch);
}
+ @Test
+ public void testExportingSumDataInBatches() {
+ ArgumentCaptor argumentCaptor =
+ ArgumentCaptor.forClass(CreateTimeSeriesRequest.class);
+
+ UnaryCallable mockCallable = mock(UnaryCallable.class);
+ when(mockMetricServiceStub.createServiceTimeSeriesCallable()).thenReturn(mockCallable);
+ ApiFuture future = ApiFutures.immediateFuture(Empty.getDefaultInstance());
+ when(mockCallable.futureCall(argumentCaptor.capture())).thenReturn(future);
+
+ long startEpoch = 10;
+ long endEpoch = 15;
+
+ Collection toExport = new ArrayList<>();
+ for (int i = 0; i < 250; i++) {
+ Attributes testAttributes =
+ Attributes.builder()
+ .put(BIGTABLE_PROJECT_ID_KEY, projectId)
+ .put(INSTANCE_ID_KEY, instanceId)
+ .put(TABLE_ID_KEY, tableId + i)
+ .put(CLUSTER_ID_KEY, cluster)
+ .put(ZONE_ID_KEY, zone)
+ .put(APP_PROFILE_KEY, appProfileId)
+ .build();
+ LongPointData longPointData =
+ ImmutableLongPointData.create(startEpoch, endEpoch, testAttributes, i);
+
+ MetricData longData =
+ ImmutableMetricData.createLongSum(
+ resource,
+ scope,
+ "bigtable.googleapis.com/internal/client/retry_count",
+ "description",
+ "1",
+ ImmutableSumData.create(
+ true, AggregationTemporality.CUMULATIVE, ImmutableList.of(longPointData)));
+ toExport.add(longData);
+ }
+
+ exporter.export(toExport);
+
+ assertThat(argumentCaptor.getAllValues()).hasSize(2);
+ CreateTimeSeriesRequest firstRequest = argumentCaptor.getAllValues().get(0);
+ CreateTimeSeriesRequest secondRequest = argumentCaptor.getAllValues().get(1);
+
+ assertThat(firstRequest.getTimeSeriesList()).hasSize(200);
+ assertThat(secondRequest.getTimeSeriesList()).hasSize(50);
+
+ for (int i = 0; i < 250; i++) {
+ TimeSeries timeSeries;
+ if (i < 200) {
+ timeSeries = firstRequest.getTimeSeriesList().get(i);
+ } else {
+ timeSeries = secondRequest.getTimeSeriesList().get(i - 200);
+ }
+
+ assertThat(timeSeries.getResource().getLabelsMap())
+ .containsExactly(
+ BIGTABLE_PROJECT_ID_KEY.getKey(), projectId,
+ INSTANCE_ID_KEY.getKey(), instanceId,
+ TABLE_ID_KEY.getKey(), tableId + i,
+ CLUSTER_ID_KEY.getKey(), cluster,
+ ZONE_ID_KEY.getKey(), zone);
+
+ assertThat(timeSeries.getMetric().getLabelsMap()).hasSize(2);
+ assertThat(timeSeries.getMetric().getLabelsMap())
+ .containsAtLeast(APP_PROFILE_KEY.getKey(), appProfileId, CLIENT_UID_KEY.getKey(), taskId);
+ assertThat(timeSeries.getPoints(0).getValue().getInt64Value()).isEqualTo(i);
+ assertThat(timeSeries.getPoints(0).getInterval().getStartTime().getNanos())
+ .isEqualTo(startEpoch);
+ assertThat(timeSeries.getPoints(0).getInterval().getEndTime().getNanos()).isEqualTo(endEpoch);
+ }
+ }
+
@Test
public void testTimeSeriesForMetricWithGceOrGkeResource() {
String gceProjectId = "fake-gce-project";
From 54e6ffb367bcbc91c80e41ce91bda04c70bce6eb Mon Sep 17 00:00:00 2001
From: "release-please[bot]"
<55107282+release-please[bot]@users.noreply.github.com>
Date: Wed, 8 May 2024 12:04:19 -0400
Subject: [PATCH 5/5] chore(main): release 2.39.1 (#2220)
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
---
CHANGELOG.md | 8 ++++++++
google-cloud-bigtable-bom/pom.xml | 16 ++++++++--------
google-cloud-bigtable-deps-bom/pom.xml | 2 +-
google-cloud-bigtable-emulator-core/pom.xml | 4 ++--
google-cloud-bigtable-emulator/pom.xml | 10 +++++-----
google-cloud-bigtable/pom.xml | 10 +++++-----
.../java/com/google/cloud/bigtable/Version.java | 2 +-
grpc-google-cloud-bigtable-admin-v2/pom.xml | 8 ++++----
grpc-google-cloud-bigtable-v2/pom.xml | 8 ++++----
pom.xml | 12 ++++++------
proto-google-cloud-bigtable-admin-v2/pom.xml | 8 ++++----
proto-google-cloud-bigtable-v2/pom.xml | 8 ++++----
samples/snapshot/pom.xml | 2 +-
test-proxy/pom.xml | 4 ++--
versions.txt | 14 +++++++-------
15 files changed, 62 insertions(+), 54 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 122f68bef5..65c5ed4d4f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,13 @@
# Changelog
+## [2.39.1](https://github.com/googleapis/java-bigtable/compare/v2.39.0...v2.39.1) (2024-05-08)
+
+
+### Bug Fixes
+
+* Batch time series data when exporting client-side metric ([#2222](https://github.com/googleapis/java-bigtable/issues/2222)) ([1f9f169](https://github.com/googleapis/java-bigtable/commit/1f9f1698339ae470d821963e1037e0132016d216))
+* Remove stale module from bom ([#2218](https://github.com/googleapis/java-bigtable/issues/2218)) ([7145864](https://github.com/googleapis/java-bigtable/commit/7145864868b3f7df69f9b2db7a822f9faf903f33))
+
## [2.39.0](https://github.com/googleapis/java-bigtable/compare/v2.38.0...v2.39.0) (2024-04-29)
diff --git a/google-cloud-bigtable-bom/pom.xml b/google-cloud-bigtable-bom/pom.xml
index d0bb5ddb6f..42f118e9b5 100644
--- a/google-cloud-bigtable-bom/pom.xml
+++ b/google-cloud-bigtable-bom/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-bigtable-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
com.google.cloud
@@ -63,37 +63,37 @@
com.google.cloud
google-cloud-bigtable
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.cloud
google-cloud-bigtable-emulator
- 0.176.1-SNAPSHOT
+ 0.176.1
com.google.cloud
google-cloud-bigtable-emulator-core
- 0.176.1-SNAPSHOT
+ 0.176.1
com.google.api.grpc
grpc-google-cloud-bigtable-admin-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.api.grpc
grpc-google-cloud-bigtable-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.api.grpc
proto-google-cloud-bigtable-admin-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.api.grpc
proto-google-cloud-bigtable-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
diff --git a/google-cloud-bigtable-deps-bom/pom.xml b/google-cloud-bigtable-deps-bom/pom.xml
index 11acad1f9d..2220a5d76d 100644
--- a/google-cloud-bigtable-deps-bom/pom.xml
+++ b/google-cloud-bigtable-deps-bom/pom.xml
@@ -13,7 +13,7 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
diff --git a/google-cloud-bigtable-emulator-core/pom.xml b/google-cloud-bigtable-emulator-core/pom.xml
index 4f9f2bd8dc..7120c2941c 100644
--- a/google-cloud-bigtable-emulator-core/pom.xml
+++ b/google-cloud-bigtable-emulator-core/pom.xml
@@ -7,11 +7,11 @@
google-cloud-bigtable-parent
com.google.cloud
- 2.39.1-SNAPSHOT
+ 2.39.1
google-cloud-bigtable-emulator-core
- 0.176.1-SNAPSHOT
+ 0.176.1
A Java wrapper for the Cloud Bigtable emulator.
diff --git a/google-cloud-bigtable-emulator/pom.xml b/google-cloud-bigtable-emulator/pom.xml
index a206f2b758..943d4d0828 100644
--- a/google-cloud-bigtable-emulator/pom.xml
+++ b/google-cloud-bigtable-emulator/pom.xml
@@ -5,7 +5,7 @@
4.0.0
google-cloud-bigtable-emulator
- 0.176.1-SNAPSHOT
+ 0.176.1
Google Cloud Java - Bigtable Emulator
https://github.com/googleapis/java-bigtable
@@ -14,7 +14,7 @@
com.google.cloud
google-cloud-bigtable-parent
- 2.39.1-SNAPSHOT
+ 2.39.1
scm:git:git@github.com:googleapis/java-bigtable.git
@@ -81,14 +81,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
@@ -99,7 +99,7 @@
com.google.cloud
google-cloud-bigtable-emulator-core
- 0.176.1-SNAPSHOT
+ 0.176.1
diff --git a/google-cloud-bigtable/pom.xml b/google-cloud-bigtable/pom.xml
index 25b579492a..8a5e4ea870 100644
--- a/google-cloud-bigtable/pom.xml
+++ b/google-cloud-bigtable/pom.xml
@@ -2,7 +2,7 @@
4.0.0
google-cloud-bigtable
- 2.39.1-SNAPSHOT
+ 2.39.1
jar
Google Cloud Bigtable
https://github.com/googleapis/java-bigtable
@@ -12,11 +12,11 @@
com.google.cloud
google-cloud-bigtable-parent
- 2.39.1-SNAPSHOT
+ 2.39.1
- 2.39.1-SNAPSHOT
+ 2.39.1
google-cloud-bigtable
@@ -47,14 +47,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java
index cfb6dede0f..2e4945eceb 100644
--- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java
+++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java
@@ -20,6 +20,6 @@
@InternalApi("For internal use only")
public final class Version {
// {x-version-update-start:google-cloud-bigtable:current}
- public static String VERSION = "2.39.1-SNAPSHOT";
+ public static String VERSION = "2.39.1";
// {x-version-update-end}
}
diff --git a/grpc-google-cloud-bigtable-admin-v2/pom.xml b/grpc-google-cloud-bigtable-admin-v2/pom.xml
index 24626b9ad7..3b6c7cc53c 100644
--- a/grpc-google-cloud-bigtable-admin-v2/pom.xml
+++ b/grpc-google-cloud-bigtable-admin-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-cloud-bigtable-admin-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
grpc-google-cloud-bigtable-admin-v2
GRPC library for grpc-google-cloud-bigtable-admin-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.1-SNAPSHOT
+ 2.39.1
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
diff --git a/grpc-google-cloud-bigtable-v2/pom.xml b/grpc-google-cloud-bigtable-v2/pom.xml
index 471564257a..5005c5e1a6 100644
--- a/grpc-google-cloud-bigtable-v2/pom.xml
+++ b/grpc-google-cloud-bigtable-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-cloud-bigtable-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
grpc-google-cloud-bigtable-v2
GRPC library for grpc-google-cloud-bigtable-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.1-SNAPSHOT
+ 2.39.1
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
diff --git a/pom.xml b/pom.xml
index 9d927fd0cb..ab150b4c27 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
google-cloud-bigtable-parent
pom
- 2.39.1-SNAPSHOT
+ 2.39.1
Google Cloud Bigtable Parent
https://github.com/googleapis/java-bigtable
@@ -153,27 +153,27 @@
com.google.api.grpc
proto-google-cloud-bigtable-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.api.grpc
proto-google-cloud-bigtable-admin-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.api.grpc
grpc-google-cloud-bigtable-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.api.grpc
grpc-google-cloud-bigtable-admin-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
com.google.cloud
google-cloud-bigtable
- 2.39.1-SNAPSHOT
+ 2.39.1
diff --git a/proto-google-cloud-bigtable-admin-v2/pom.xml b/proto-google-cloud-bigtable-admin-v2/pom.xml
index b401504491..96a34f4561 100644
--- a/proto-google-cloud-bigtable-admin-v2/pom.xml
+++ b/proto-google-cloud-bigtable-admin-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-cloud-bigtable-admin-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
proto-google-cloud-bigtable-admin-v2
PROTO library for proto-google-cloud-bigtable-admin-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.1-SNAPSHOT
+ 2.39.1
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
diff --git a/proto-google-cloud-bigtable-v2/pom.xml b/proto-google-cloud-bigtable-v2/pom.xml
index 1e4a5f7ae2..198f2c507f 100644
--- a/proto-google-cloud-bigtable-v2/pom.xml
+++ b/proto-google-cloud-bigtable-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-cloud-bigtable-v2
- 2.39.1-SNAPSHOT
+ 2.39.1
proto-google-cloud-bigtable-v2
PROTO library for proto-google-cloud-bigtable-v2
com.google.cloud
google-cloud-bigtable-parent
- 2.39.1-SNAPSHOT
+ 2.39.1
@@ -18,14 +18,14 @@
com.google.cloud
google-cloud-bigtable-deps-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
com.google.cloud
google-cloud-bigtable-bom
- 2.39.1-SNAPSHOT
+ 2.39.1
pom
import
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index 1a4bb60d45..d09b9359da 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -28,7 +28,7 @@
com.google.cloud
google-cloud-bigtable
- 2.39.1-SNAPSHOT
+ 2.39.1
diff --git a/test-proxy/pom.xml b/test-proxy/pom.xml
index 75d41585ad..c0f022bd3f 100644
--- a/test-proxy/pom.xml
+++ b/test-proxy/pom.xml
@@ -12,11 +12,11 @@
google-cloud-bigtable-parent
com.google.cloud
- 2.39.1-SNAPSHOT
+ 2.39.1
- 2.39.1-SNAPSHOT
+ 2.39.1
diff --git a/versions.txt b/versions.txt
index 14590ca054..441693355d 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,10 +1,10 @@
# Format:
# module:released-version:current-version
-google-cloud-bigtable:2.39.0:2.39.1-SNAPSHOT
-grpc-google-cloud-bigtable-admin-v2:2.39.0:2.39.1-SNAPSHOT
-grpc-google-cloud-bigtable-v2:2.39.0:2.39.1-SNAPSHOT
-proto-google-cloud-bigtable-admin-v2:2.39.0:2.39.1-SNAPSHOT
-proto-google-cloud-bigtable-v2:2.39.0:2.39.1-SNAPSHOT
-google-cloud-bigtable-emulator:0.176.0:0.176.1-SNAPSHOT
-google-cloud-bigtable-emulator-core:0.176.0:0.176.1-SNAPSHOT
+google-cloud-bigtable:2.39.1:2.39.1
+grpc-google-cloud-bigtable-admin-v2:2.39.1:2.39.1
+grpc-google-cloud-bigtable-v2:2.39.1:2.39.1
+proto-google-cloud-bigtable-admin-v2:2.39.1:2.39.1
+proto-google-cloud-bigtable-v2:2.39.1:2.39.1
+google-cloud-bigtable-emulator:0.176.1:0.176.1
+google-cloud-bigtable-emulator-core:0.176.1:0.176.1