diff --git a/.github/release-please.yml b/.github/release-please.yml index 66e70c4434..e31f046214 100644 --- a/.github/release-please.yml +++ b/.github/release-please.yml @@ -16,5 +16,12 @@ branches: - >- google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java branch: java7 + - bumpMinorPreMajor: true + handleGHRelease: true + releaseType: java-backport + extraFiles: + - >- + google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java + branch: 2.2.x extraFiles: - google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java diff --git a/.github/sync-repo-settings.yaml b/.github/sync-repo-settings.yaml index a9131e4d44..e1df1503e6 100644 --- a/.github/sync-repo-settings.yaml +++ b/.github/sync-repo-settings.yaml @@ -44,6 +44,20 @@ branchProtectionRules: - units (11) - 'Kokoro - Test: Integration' - cla/google + - pattern: 2.2.x + isAdminEnforced: true + requiredApprovingReviewCount: 1 + requiresCodeOwnerReviews: true + requiresStrictStatusChecks: false + requiredStatusCheckContexts: + - dependencies (8) + - dependencies (11) + - lint + - clirr + - units (8) + - units (11) + - 'Kokoro - Test: Integration' + - cla/google permissionRules: - team: yoshi-admins permission: admin diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 2425d7234f..05de1f60dc 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -8,13 +8,11 @@ jobs: units: runs-on: ubuntu-latest strategy: + fail-fast: false matrix: java: [8, 11, 17] steps: - uses: actions/checkout@v2 - - uses: stCarolas/setup-maven@v4 - with: - maven-version: 3.8.1 - uses: actions/setup-java@v2 with: distribution: zulu @@ -27,9 +25,6 @@ jobs: runs-on: windows-latest steps: - uses: actions/checkout@v2 - - uses: stCarolas/setup-maven@v4 - with: - maven-version: 3.8.1 - uses: actions/setup-java@v2 with: distribution: zulu @@ -45,9 +40,6 @@ jobs: java: [8, 11, 17] steps: - uses: actions/checkout@v2 - - uses: stCarolas/setup-maven@v4 - with: - maven-version: 3.8.1 - uses: actions/setup-java@v2 with: distribution: zulu @@ -58,13 +50,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - uses: stCarolas/setup-maven@v4 - with: - maven-version: 3.8.1 - uses: actions/setup-java@v2 with: distribution: zulu - java-version: 8 + java-version: 11 - run: java -version - run: .kokoro/build.sh env: @@ -73,9 +62,6 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - uses: stCarolas/setup-maven@v4 - with: - maven-version: 3.8.1 - uses: actions/setup-java@v2 with: distribution: zulu diff --git a/.kokoro/build.sh b/.kokoro/build.sh index ace8e1debd..799cda7b66 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -69,6 +69,11 @@ integration) verify RETURN_CODE=$? ;; +graalvm) + # Run Unit and Integration Tests with Native Image + mvn test -Pnative -Penable-integration-tests + RETURN_CODE=$? + ;; samples) SAMPLES_DIR=samples # only run ITs in snapshot/ on presubmit PRs. run ITs in all 3 samples/ subdirectories otherwise. diff --git a/.kokoro/dependencies.sh b/.kokoro/dependencies.sh index 9a5105d7eb..d7476cfe97 100755 --- a/.kokoro/dependencies.sh +++ b/.kokoro/dependencies.sh @@ -38,15 +38,13 @@ function determineMavenOpts() { | sed -E 's/^(1\.[0-9]\.0).*$/\1/g' ) - case $javaVersion in - "17") + if [[ $javaVersion == 17* ]] + then # MaxPermSize is no longer supported as of jdk 17 echo -n "-Xmx1024m" - ;; - *) + else echo -n "-Xmx1024m -XX:MaxPermSize=128m" - ;; - esac + fi } export MAVEN_OPTS=$(determineMavenOpts) diff --git a/.kokoro/presubmit/graalvm-native.cfg b/.kokoro/presubmit/graalvm-native.cfg new file mode 100644 index 0000000000..4c7225ec92 --- /dev/null +++ b/.kokoro/presubmit/graalvm-native.cfg @@ -0,0 +1,33 @@ +# Format: //devtools/kokoro/config/proto/build.proto + +# Configure the docker image for kokoro-trampoline. +env_vars: { + key: "TRAMPOLINE_IMAGE" + value: "gcr.io/cloud-devrel-kokoro-resources/graalvm" +} + +env_vars: { + key: "JOB_TYPE" + value: "graalvm" +} + +# TODO: remove this after we've migrated all tests and scripts +env_vars: { + key: "GCLOUD_PROJECT" + value: "gcloud-devel" +} + +env_vars: { + key: "GOOGLE_CLOUD_PROJECT" + value: "gcloud-devel" +} + +env_vars: { + key: "GOOGLE_APPLICATION_CREDENTIALS" + value: "secret_manager/java-it-service-account" +} + +env_vars: { + key: "SECRET_MANAGER_KEYS" + value: "java-it-service-account" +} diff --git a/.kokoro/release/publish_javadoc11.sh b/.kokoro/release/publish_javadoc11.sh index 5220866fe5..2af6c7caba 100755 --- a/.kokoro/release/publish_javadoc11.sh +++ b/.kokoro/release/publish_javadoc11.sh @@ -36,13 +36,9 @@ mvn clean install -B -q -DskipTests=true export NAME=google-cloud-bigtable export VERSION=$(grep ${NAME}: versions.txt | cut -d: -f3) -# V3 generates docfx yml from javadoc -# generate yml -mvn clean site -B -q -P docFX - -# copy README to docfx-yml dir and rename index.md -cp README.md target/docfx-yml/index.md -# copy CHANGELOG to docfx-yml dir and rename history.md +# cloud RAD generation +mvn clean javadoc:aggregate -B -q -P docFX +# include CHANGELOG cp CHANGELOG.md target/docfx-yml/history.md pushd target/docfx-yml diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c68f82ffe..aed7d03d8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## [2.3.0](https://www.github.com/googleapis/java-bigtable/compare/v2.2.0...v2.3.0) (2021-11-16) + + +### Features + +* configure branch 2.2.x as a release branch ([#1044](https://www.github.com/googleapis/java-bigtable/issues/1044)) ([68e8790](https://www.github.com/googleapis/java-bigtable/commit/68e8790f61b90ce2b5e7479b3d23e2f964199d3e)) +* send attempt and timestamp in headers ([#935](https://www.github.com/googleapis/java-bigtable/issues/935)) ([de3b476](https://www.github.com/googleapis/java-bigtable/commit/de3b476d4acd644d1e5bc782dc697ce5b145992e)) + + +### Bug Fixes + +* **java:** java 17 dependency arguments ([#1046](https://www.github.com/googleapis/java-bigtable/issues/1046)) ([422efa0](https://www.github.com/googleapis/java-bigtable/commit/422efa0289b232118b446224c5e084fe3bc19491)) + + +### Dependencies + +* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.0 ([#1064](https://www.github.com/googleapis/java-bigtable/issues/1064)) ([5b72aa9](https://www.github.com/googleapis/java-bigtable/commit/5b72aa96bab018f4b5b1b565a6487dbb45ccd323)) + ## [2.2.0](https://www.github.com/googleapis/java-bigtable/compare/v2.1.4...v2.2.0) (2021-10-20) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 48b0fa29b0..5d05ad023a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -15,6 +15,14 @@ You generally only need to submit a CLA once, so if you've already submitted one (even if it was for a different project), you probably don't need to do it again. +## Developing + +This project relocates some of its internal dependencies. Since IDEs can't resolve the relocated symbols on their own, +a workaround is: + +1. Install the shaded module `mvn install -pl google-cloud-bigtable-stats` +2. Disable the `with-shaded` profile to force IDEs to resolve the relocated dependencies from the local repository + ## Code reviews All submissions, including submissions by project members, require review. We diff --git a/google-cloud-bigtable-bom/pom.xml b/google-cloud-bigtable-bom/pom.xml index bac7f33a95..ff15eb0c34 100644 --- a/google-cloud-bigtable-bom/pom.xml +++ b/google-cloud-bigtable-bom/pom.xml @@ -3,12 +3,12 @@ 4.0.0 com.google.cloud google-cloud-bigtable-bom - 2.2.0 + 2.3.0 pom com.google.cloud google-cloud-shared-config - 1.1.0 + 1.2.1 Google Cloud Bigtable BOM @@ -62,32 +62,32 @@ com.google.cloud google-cloud-bigtable - 2.2.0 + 2.3.0 com.google.cloud google-cloud-bigtable-emulator - 0.139.0 + 0.140.0 com.google.api.grpc grpc-google-cloud-bigtable-admin-v2 - 2.2.0 + 2.3.0 com.google.api.grpc grpc-google-cloud-bigtable-v2 - 2.2.0 + 2.3.0 com.google.api.grpc proto-google-cloud-bigtable-admin-v2 - 2.2.0 + 2.3.0 com.google.api.grpc proto-google-cloud-bigtable-v2 - 2.2.0 + 2.3.0 diff --git a/google-cloud-bigtable-deps-bom/pom.xml b/google-cloud-bigtable-deps-bom/pom.xml index 9e62de42c7..80e038604f 100644 --- a/google-cloud-bigtable-deps-bom/pom.xml +++ b/google-cloud-bigtable-deps-bom/pom.xml @@ -7,12 +7,12 @@ com.google.cloud google-cloud-shared-config - 1.1.0 + 1.2.1 com.google.cloud google-cloud-bigtable-deps-bom - 2.2.0 + 2.3.0 pom @@ -65,7 +65,7 @@ com.google.cloud google-cloud-shared-dependencies - 2.4.0 + 2.5.0 pom import diff --git a/google-cloud-bigtable-emulator/pom.xml b/google-cloud-bigtable-emulator/pom.xml index 632bd7fe3e..96a20bdd9d 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.139.0 + 0.140.0 Google Cloud Java - Bigtable Emulator https://github.com/googleapis/java-bigtable @@ -14,7 +14,7 @@ com.google.cloud google-cloud-bigtable-parent - 2.2.0 + 2.3.0 scm:git:git@github.com:googleapis/java-bigtable.git @@ -80,14 +80,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.2.0 + 2.3.0 pom import com.google.cloud google-cloud-bigtable-bom - 2.2.0 + 2.3.0 pom import diff --git a/google-cloud-bigtable-stats/pom.xml b/google-cloud-bigtable-stats/pom.xml new file mode 100644 index 0000000000..a9bd3fdfc6 --- /dev/null +++ b/google-cloud-bigtable-stats/pom.xml @@ -0,0 +1,89 @@ + + + + com.google.cloud + google-cloud-bigtable-parent + 2.3.0 + + 4.0.0 + + + google-cloud-bigtable-stats + 2.3.0 + Experimental project to shade OpenCensus dependencies. + + + + + com.google.cloud + google-cloud-bigtable-deps-bom + 2.3.0 + pom + import + + + + + + + io.opencensus + opencensus-api + + + io.opencensus + opencensus-impl + + + io.opencensus + opencensus-exporter-stats-stackdriver + + + + + + + org.apache.maven.plugins + maven-shade-plugin + + + package + + shade + + + false + true + + + io.opencensus:* + + + + + io.opencensus + + com.google.bigtable.veneer.repackaged.io.opencensus + + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.2.0 + + + * + + + + + + diff --git a/google-cloud-bigtable/clirr-ignored-differences.xml b/google-cloud-bigtable/clirr-ignored-differences.xml index 46b404bee5..767e12e548 100644 --- a/google-cloud-bigtable/clirr-ignored-differences.xml +++ b/google-cloud-bigtable/clirr-ignored-differences.xml @@ -34,4 +34,31 @@ com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStub * + + + 8001 + com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracerFactory + + + + 8001 + com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracer + + + + 8001 + com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracer$Builder + + change method args is ok because HeaderTracerStreamingCallable is InternalApi + + 7004 + com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerStreamingCallable + * + + + + 7004 + com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerUnaryCallable + * + diff --git a/google-cloud-bigtable/pom.xml b/google-cloud-bigtable/pom.xml index 7c4e8f4f1c..07fc84f75b 100644 --- a/google-cloud-bigtable/pom.xml +++ b/google-cloud-bigtable/pom.xml @@ -2,7 +2,7 @@ 4.0.0 google-cloud-bigtable - 2.2.0 + 2.3.0 jar Google Cloud Bigtable https://github.com/googleapis/java-bigtable @@ -12,11 +12,11 @@ com.google.cloud google-cloud-bigtable-parent - 2.2.0 + 2.3.0 - 2.2.0 + 2.3.0 google-cloud-bigtable @@ -43,14 +43,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.2.0 + 2.3.0 pom import com.google.cloud google-cloud-bigtable-bom - 2.2.0 + 2.3.0 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 a4a0841629..a4d4280b4b 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.2.0"; + public static String VERSION = "2.3.0"; // {x-version-update-end} } diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java index b0d1b3e22d..2c1d337f7e 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java @@ -525,6 +525,7 @@ public final UnaryCallable listInst * .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) * .setDisplayName("displayName1714148973") * .putAllLabels(new HashMap()) + * .setCreateTime(Timestamp.newBuilder().build()) * .build(); * Instance response = baseBigtableInstanceAdminClient.updateInstance(request); * } @@ -552,6 +553,7 @@ public final Instance updateInstance(Instance request) { * .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) * .setDisplayName("displayName1714148973") * .putAllLabels(new HashMap()) + * .setCreateTime(Timestamp.newBuilder().build()) * .build(); * ApiFuture future = * baseBigtableInstanceAdminClient.updateInstanceCallable().futureCall(request); diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStub.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStub.java index 46729134fd..a1cb1ff58b 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStub.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStub.java @@ -75,6 +75,8 @@ import com.google.cloud.bigtable.data.v2.stub.metrics.HeaderTracerUnaryCallable; import com.google.cloud.bigtable.data.v2.stub.metrics.MetricsTracerFactory; import com.google.cloud.bigtable.data.v2.stub.metrics.RpcMeasureConstants; +import com.google.cloud.bigtable.data.v2.stub.metrics.StatsHeadersServerStreamingCallable; +import com.google.cloud.bigtable.data.v2.stub.metrics.StatsHeadersUnaryCallable; import com.google.cloud.bigtable.data.v2.stub.mutaterows.BulkMutateRowsUserFacingCallable; import com.google.cloud.bigtable.data.v2.stub.mutaterows.MutateRowsBatchingDescriptor; import com.google.cloud.bigtable.data.v2.stub.mutaterows.MutateRowsRetryingCallable; @@ -215,14 +217,6 @@ public static EnhancedBigtableStubSettings finalizeSettings( MetricsTracerFactory.create(tagger, stats, attributes), // Add user configured tracer settings.getTracerFactory()))); - builder.setHeaderTracer( - builder - .getHeaderTracer() - .toBuilder() - .setStats(stats) - .setTagger(tagger) - .setStatsAttributes(attributes) - .build()); return builder.build(); } @@ -397,11 +391,14 @@ public Map extract(ReadRowsRequest readRowsRequest) { .build(), readRowsSettings.getRetryableCodes()); + ServerStreamingCallable withStatsHeaders = + new StatsHeadersServerStreamingCallable<>(base); + // Sometimes ReadRows connections are disconnected via an RST frame. This error is transient and // should be treated similar to UNAVAILABLE. However, this exception has an INTERNAL error code // which by default is not retryable. Convert the exception so it can be retried in the client. ServerStreamingCallable convertException = - new ReadRowsConvertExceptionCallable<>(base); + new ReadRowsConvertExceptionCallable<>(withStatsHeaders); ServerStreamingCallable merging = new RowMergingCallable<>(convertException, rowAdapter); @@ -420,8 +417,7 @@ public Map extract(ReadRowsRequest readRowsRequest) { Callables.watched(merging, innerSettings, clientContext); ServerStreamingCallable withHeaderTracer = - new HeaderTracerStreamingCallable<>( - watched, settings.getHeaderTracer(), getSpanName("ReadRows").toString()); + new HeaderTracerStreamingCallable<>(watched); // Retry logic is split into 2 parts to workaround a rare edge case described in // ReadRowsRetryCompletedCallable @@ -468,9 +464,11 @@ public Map extract( UnaryCallable> spoolable = base.all(); + UnaryCallable> withStatsHeaders = + new StatsHeadersUnaryCallable<>(spoolable); + UnaryCallable> withHeaderTracer = - new HeaderTracerUnaryCallable<>( - spoolable, settings.getHeaderTracer(), getSpanName(methodName).toString()); + new HeaderTracerUnaryCallable<>(withStatsHeaders); UnaryCallable> retryable = Callables.retrying(withHeaderTracer, settings.sampleRowKeysSettings(), clientContext); @@ -505,9 +503,11 @@ public Map extract(MutateRowRequest mutateRowRequest) { .build(), settings.mutateRowSettings().getRetryableCodes()); + UnaryCallable withStatsHeaders = + new StatsHeadersUnaryCallable<>(base); + UnaryCallable withHeaderTracer = - new HeaderTracerUnaryCallable<>( - base, settings.getHeaderTracer(), getSpanName(methodName).toString()); + new HeaderTracerUnaryCallable<>(withStatsHeaders); UnaryCallable retrying = Callables.retrying(withHeaderTracer, settings.mutateRowSettings(), clientContext); @@ -549,12 +549,12 @@ private UnaryCallable createBulkMutateRowsCallable() { flowControlCallable != null ? flowControlCallable : baseCallable, requestContext); SpanName spanName = getSpanName("MutateRows"); - UnaryCallable traced = - new TracedUnaryCallable<>(userFacing, clientContext.getTracerFactory(), spanName); UnaryCallable withHeaderTracer = - new HeaderTracerUnaryCallable<>(traced, settings.getHeaderTracer(), spanName.toString()); + new HeaderTracerUnaryCallable<>(userFacing); + UnaryCallable traced = + new TracedUnaryCallable<>(withHeaderTracer, clientContext.getTracerFactory(), spanName); - return withHeaderTracer.withDefaultCallContext(clientContext.getDefaultCallContext()); + return traced.withDefaultCallContext(clientContext.getDefaultCallContext()); } /** @@ -646,6 +646,9 @@ public Map extract(MutateRowsRequest mutateRowsRequest) { .build(), settings.bulkMutateRowsSettings().getRetryableCodes()); + ServerStreamingCallable withStatsHeaders = + new StatsHeadersServerStreamingCallable<>(base); + RetryAlgorithm retryAlgorithm = new RetryAlgorithm<>( new ApiResultRetryAlgorithm(), @@ -656,7 +659,7 @@ public Map extract(MutateRowsRequest mutateRowsRequest) { return new MutateRowsRetryingCallable( clientContext.getDefaultCallContext(), - base, + withStatsHeaders, retryingExecutor, settings.bulkMutateRowsSettings().getRetryableCodes()); } @@ -689,9 +692,11 @@ public Map extract( .build(), settings.checkAndMutateRowSettings().getRetryableCodes()); + UnaryCallable withStatsHeaders = + new StatsHeadersUnaryCallable<>(base); + UnaryCallable withHeaderTracer = - new HeaderTracerUnaryCallable<>( - base, settings.getHeaderTracer(), getSpanName(methodName).toString()); + new HeaderTracerUnaryCallable<>(withStatsHeaders); UnaryCallable retrying = Callables.retrying(withHeaderTracer, settings.checkAndMutateRowSettings(), clientContext); @@ -726,10 +731,13 @@ public Map extract(ReadModifyWriteRowRequest request) { }) .build(), settings.readModifyWriteRowSettings().getRetryableCodes()); + + UnaryCallable withStatsHeaders = + new StatsHeadersUnaryCallable<>(base); + String methodName = "ReadModifyWriteRow"; UnaryCallable withHeaderTracer = - new HeaderTracerUnaryCallable<>( - base, settings.getHeaderTracer(), getSpanName(methodName).toString()); + new HeaderTracerUnaryCallable<>(withStatsHeaders); UnaryCallable retrying = Callables.retrying(withHeaderTracer, settings.readModifyWriteRowSettings(), clientContext); diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettings.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettings.java index e5424c5862..395ba52b08 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettings.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettings.java @@ -40,7 +40,6 @@ import com.google.cloud.bigtable.data.v2.models.ReadModifyWriteRow; import com.google.cloud.bigtable.data.v2.models.Row; import com.google.cloud.bigtable.data.v2.models.RowMutation; -import com.google.cloud.bigtable.data.v2.stub.metrics.HeaderTracer; import com.google.cloud.bigtable.data.v2.stub.mutaterows.MutateRowsBatchingDescriptor; import com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsBatchingDescriptor; import com.google.common.base.MoreObjects; @@ -164,7 +163,6 @@ public class EnhancedBigtableStubSettings extends StubSettings primedTableIds; - private HeaderTracer headerTracer; private final Map jwtAudienceMapping; private final ServerStreamingCallSettings readRowsSettings; @@ -199,7 +197,6 @@ private EnhancedBigtableStubSettings(Builder builder) { appProfileId = builder.appProfileId; isRefreshingChannel = builder.isRefreshingChannel; primedTableIds = builder.primedTableIds; - headerTracer = builder.headerTracer; jwtAudienceMapping = builder.jwtAudienceMapping; // Per method settings. @@ -245,11 +242,6 @@ public List getPrimedTableIds() { return primedTableIds; } - /** Gets the tracer for capturing metrics in the header. */ - HeaderTracer getHeaderTracer() { - return headerTracer; - } - @InternalApi("Used for internal testing") public Map getJwtAudienceMapping() { return jwtAudienceMapping; @@ -512,7 +504,6 @@ public static class Builder extends StubSettings.Builder primedTableIds; - private HeaderTracer headerTracer; private Map jwtAudienceMapping; private final ServerStreamingCallSettings.Builder readRowsSettings; @@ -537,7 +528,6 @@ private Builder() { this.appProfileId = SERVER_DEFAULT_APP_PROFILE_ID; this.isRefreshingChannel = false; primedTableIds = ImmutableList.of(); - headerTracer = HeaderTracer.newBuilder().build(); jwtAudienceMapping = DEFAULT_JWT_AUDIENCE_MAPPING; setCredentialsProvider(defaultCredentialsProviderBuilder().build()); @@ -645,7 +635,6 @@ private Builder(EnhancedBigtableStubSettings settings) { appProfileId = settings.appProfileId; isRefreshingChannel = settings.isRefreshingChannel; primedTableIds = settings.primedTableIds; - headerTracer = settings.headerTracer; jwtAudienceMapping = settings.jwtAudienceMapping; // Per method settings. @@ -769,17 +758,6 @@ public List getPrimedTableIds() { return primedTableIds; } - /** Configure the header tracer for surfacing metrics in the header. */ - Builder setHeaderTracer(HeaderTracer headerTracer) { - this.headerTracer = headerTracer; - return this; - } - - /** Gets the header tracer that'll be used to surface metrics in the header. */ - HeaderTracer getHeaderTracer() { - return headerTracer; - } - @InternalApi("Used for internal testing") public Builder setJwtAudienceMapping(Map jwtAudienceMapping) { this.jwtAudienceMapping = Preconditions.checkNotNull(jwtAudienceMapping); @@ -870,7 +848,6 @@ public String toString() { .add("appProfileId", appProfileId) .add("isRefreshingChannel", isRefreshingChannel) .add("primedTableIds", primedTableIds) - .add("headerTracer", headerTracer) .add("jwtAudienceMapping", jwtAudienceMapping) .add("readRowsSettings", readRowsSettings) .add("readRowSettings", readRowSettings) diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableTracer.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableTracer.java new file mode 100644 index 0000000000..5fdf625662 --- /dev/null +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BigtableTracer.java @@ -0,0 +1,41 @@ +/* + * Copyright 2020 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 + * + * https://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.google.cloud.bigtable.data.v2.stub.metrics; + +import com.google.api.core.BetaApi; +import com.google.api.gax.rpc.ApiCallContext; +import com.google.api.gax.tracing.ApiTracer; +import com.google.api.gax.tracing.BaseApiTracer; +import javax.annotation.Nullable; + +/** A Bigtable specific {@link ApiTracer} that includes additional contexts. */ +@BetaApi("This surface is stable yet it might be removed in the future.") +public abstract class BigtableTracer extends BaseApiTracer { + + /** + * Get the attempt number of the current call. Attempt number for the current call is passed in + * and should be recorded in {@link #attemptStarted(int)}. With the getter we can access it from + * {@link ApiCallContext}. Attempt number starts from 0. + */ + public abstract int getAttempt(); + + /** + * Record the latency between Google's network receives the RPC and reads back the first byte of + * the response from server-timing header. If server-timing header is missing, increment the + * missing header count. + */ + public abstract void recordGfeMetadata(@Nullable Long latency); +} diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracer.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracer.java index 25893ee881..1167fe17ba 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracer.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracer.java @@ -1,5 +1,5 @@ /* - * Copyright 2020 Google LLC + * Copyright 2021 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,18 +16,32 @@ package com.google.cloud.bigtable.data.v2.stub.metrics; import com.google.api.gax.tracing.ApiTracer; -import com.google.api.gax.tracing.BaseApiTracer; import com.google.common.collect.ImmutableList; import java.util.ArrayList; import java.util.List; +import javax.annotation.Nullable; import org.threeten.bp.Duration; -/** Combines multiple {@link ApiTracer}s into a single {@link ApiTracer}. */ -class CompositeTracer extends BaseApiTracer { +/** + * Combines multiple {@link ApiTracer}s and {@link BigtableTracer}s into a single {@link ApiTracer}. + */ +class CompositeTracer extends BigtableTracer { private final List children; + private final List bigtableTracers; + private volatile int attempt; CompositeTracer(List children) { - this.children = ImmutableList.copyOf(children); + ImmutableList.Builder childrenBuilder = ImmutableList.builder(); + ImmutableList.Builder bigtableTracerBuilder = ImmutableList.builder(); + + for (ApiTracer child : children) { + if (child instanceof BigtableTracer) { + bigtableTracerBuilder.add((BigtableTracer) child); + } + childrenBuilder.add(child); + } + this.children = childrenBuilder.build(); + this.bigtableTracers = bigtableTracerBuilder.build(); } @Override @@ -78,6 +92,7 @@ public void connectionSelected(String id) { @Override public void attemptStarted(int attemptNumber) { + this.attempt = attemptNumber; for (ApiTracer child : children) { child.attemptStarted(attemptNumber); } @@ -97,7 +112,6 @@ public void attemptCancelled() { } } - @Override public void attemptFailed(Throwable error, Duration delay) { for (ApiTracer child : children) { child.attemptFailed(error, delay); @@ -152,4 +166,16 @@ public void batchRequestSent(long elementCount, long requestSize) { child.batchRequestSent(elementCount, requestSize); } } + + @Override + public int getAttempt() { + return attempt; + } + + @Override + public void recordGfeMetadata(@Nullable Long latency) { + for (BigtableTracer tracer : bigtableTracers) { + tracer.recordGfeMetadata(latency); + } + } } diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracer.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracer.java deleted file mode 100644 index f3eb0ef1e2..0000000000 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracer.java +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Copyright 2020 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 - * - * https://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.google.cloud.bigtable.data.v2.stub.metrics; - -import com.google.api.core.InternalApi; -import com.google.auto.value.AutoValue; -import com.google.common.base.MoreObjects; -import io.grpc.Metadata; -import io.opencensus.stats.MeasureMap; -import io.opencensus.stats.Stats; -import io.opencensus.stats.StatsRecorder; -import io.opencensus.tags.TagContextBuilder; -import io.opencensus.tags.TagKey; -import io.opencensus.tags.TagValue; -import io.opencensus.tags.Tagger; -import io.opencensus.tags.Tags; -import java.util.Collections; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import javax.annotation.Nonnull; - -@InternalApi -@AutoValue -public abstract class HeaderTracer { - - private static final Metadata.Key SERVER_TIMING_HEADER_KEY = - Metadata.Key.of("server-timing", Metadata.ASCII_STRING_MARSHALLER); - private static final Pattern SERVER_TIMING_HEADER_PATTERN = Pattern.compile(".*dur=(?\\d+)"); - - @AutoValue.Builder - public abstract static class Builder { - // - public abstract Builder setTagger(@Nonnull Tagger tagger); - - public abstract Builder setStats(@Nonnull StatsRecorder stats); - - public abstract Builder setStatsAttributes(@Nonnull Map statsAttributes); - - abstract HeaderTracer autoBuild(); - - public HeaderTracer build() { - HeaderTracer headerTracer = autoBuild(); - return headerTracer; - } - // - } - - public abstract Tagger getTagger(); - - public abstract StatsRecorder getStats(); - - public abstract Map getStatsAttributes(); - - /** - * If the header has a server-timing field, extract the metric and publish it to OpenCensus. - * Otherwise increment the gfe header missing counter by 1. - */ - public void recordGfeMetadata(@Nonnull Metadata metadata, @Nonnull String spanName) { - MeasureMap measures = getStats().newMeasureMap(); - if (metadata.get(SERVER_TIMING_HEADER_KEY) != null) { - String serverTiming = metadata.get(SERVER_TIMING_HEADER_KEY); - Matcher matcher = SERVER_TIMING_HEADER_PATTERN.matcher(serverTiming); - measures.put(RpcMeasureConstants.BIGTABLE_GFE_HEADER_MISSING_COUNT, 0L); - if (matcher.find()) { - long latency = Long.valueOf(matcher.group("dur")); - measures.put(RpcMeasureConstants.BIGTABLE_GFE_LATENCY, latency); - } - } else { - measures.put(RpcMeasureConstants.BIGTABLE_GFE_HEADER_MISSING_COUNT, 1L); - } - measures.record(newTagCtxBuilder(spanName).build()); - } - - public void recordGfeMissingHeader(@Nonnull String spanName) { - MeasureMap measures = - getStats().newMeasureMap().put(RpcMeasureConstants.BIGTABLE_GFE_HEADER_MISSING_COUNT, 1L); - measures.record(newTagCtxBuilder(spanName).build()); - } - - private TagContextBuilder newTagCtxBuilder(String span) { - TagContextBuilder tagContextBuilder = getTagger().currentBuilder(); - if (span != null) { - tagContextBuilder.putLocal(RpcMeasureConstants.BIGTABLE_OP, TagValue.create(span)); - } - // Copy client level tags in - for (Map.Entry entry : getStatsAttributes().entrySet()) { - tagContextBuilder.putLocal(entry.getKey(), entry.getValue()); - } - return tagContextBuilder; - } - - public static Builder newBuilder() { - return new AutoValue_HeaderTracer.Builder() - .setTagger(Tags.getTagger()) - .setStats(Stats.getStatsRecorder()) - .setStatsAttributes(Collections.emptyMap()); - } - - public abstract Builder toBuilder(); - - @Override - public String toString() { - return MoreObjects.toStringHelper(this) - .add("stats", getStats()) - .add("tagger", getTagger()) - .add("statsAttributes", getStatsAttributes()) - .toString(); - } -} diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerStreamingCallable.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerStreamingCallable.java index fdca9297aa..ce757d9f92 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerStreamingCallable.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerStreamingCallable.java @@ -27,8 +27,8 @@ /** * This callable will inject a {@link GrpcResponseMetadata} to access the headers and trailers - * returned by gRPC methods upon completion. The {@link HeaderTracer} will process metrics that were - * injected in the header/trailer and publish them to OpenCensus. If {@link + * returned by gRPC methods upon completion. The {@link BigtableTracer} will process metrics that + * were injected in the header/trailer and publish them to OpenCensus. If {@link * GrpcResponseMetadata#getMetadata()} returned null, it probably means that the request has never * reached GFE, and it'll increment the gfe_header_missing_counter in this case. * @@ -44,26 +44,21 @@ public class HeaderTracerStreamingCallable extends ServerStreamingCallable { private final ServerStreamingCallable innerCallable; - private final HeaderTracer headerTracer; - private final String spanName; public HeaderTracerStreamingCallable( - @Nonnull ServerStreamingCallable callable, - @Nonnull HeaderTracer headerTracer, - @Nonnull String spanName) { + @Nonnull ServerStreamingCallable callable) { this.innerCallable = Preconditions.checkNotNull(callable, "Inner callable must be set"); - this.headerTracer = Preconditions.checkNotNull(headerTracer, "HeaderTracer must be set"); - this.spanName = Preconditions.checkNotNull(spanName, "Span name must be set"); } @Override public void call( RequestT request, ResponseObserver responseObserver, ApiCallContext context) { final GrpcResponseMetadata responseMetadata = new GrpcResponseMetadata(); - if (RpcViews.isGfeMetricsRegistered()) { + // tracer should always be an instance of bigtable tracer + if (RpcViews.isGfeMetricsRegistered() && context.getTracer() instanceof BigtableTracer) { HeaderTracerResponseObserver innerObserver = new HeaderTracerResponseObserver<>( - responseObserver, headerTracer, responseMetadata, spanName); + responseObserver, (BigtableTracer) context.getTracer(), responseMetadata); innerCallable.call(request, innerObserver, responseMetadata.addHandlers(context)); } else { innerCallable.call(request, responseObserver, context); @@ -72,20 +67,17 @@ public void call( private class HeaderTracerResponseObserver implements ResponseObserver { - private ResponseObserver outerObserver; - private HeaderTracer headerTracer; - private GrpcResponseMetadata responseMetadata; - private String spanName; + private final BigtableTracer tracer; + private final ResponseObserver outerObserver; + private final GrpcResponseMetadata responseMetadata; HeaderTracerResponseObserver( ResponseObserver observer, - HeaderTracer headerTracer, - GrpcResponseMetadata metadata, - String spanName) { + BigtableTracer tracer, + GrpcResponseMetadata metadata) { + this.tracer = tracer; this.outerObserver = observer; - this.headerTracer = headerTracer; this.responseMetadata = metadata; - this.spanName = spanName; } @Override @@ -103,22 +95,16 @@ public void onError(Throwable t) { // server-timing metric will be added through GrpcResponseMetadata#onHeaders(Metadata), // so it's not checking trailing metadata here. Metadata metadata = responseMetadata.getMetadata(); - if (metadata != null) { - headerTracer.recordGfeMetadata(metadata, spanName); - } else { - headerTracer.recordGfeMissingHeader(spanName); - } + Long latency = Util.getGfeLatency(metadata); + tracer.recordGfeMetadata(latency); outerObserver.onError(t); } @Override public void onComplete() { Metadata metadata = responseMetadata.getMetadata(); - if (metadata != null) { - headerTracer.recordGfeMetadata(metadata, spanName); - } else { - headerTracer.recordGfeMissingHeader(spanName); - } + Long latency = Util.getGfeLatency(metadata); + tracer.recordGfeMetadata(latency); outerObserver.onComplete(); } } diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerUnaryCallable.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerUnaryCallable.java index 17d84b2a2e..1354cd2b88 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerUnaryCallable.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerUnaryCallable.java @@ -27,8 +27,8 @@ /** * This callable will inject a {@link GrpcResponseMetadata} to access the headers and trailers - * returned by gRPC methods upon completion. The {@link HeaderTracer} will process metrics that were - * injected in the header/trailer and publish them to OpenCensus. If {@link + * returned by gRPC methods upon completion. The {@link BigtableTracer} will process metrics that + * were injected in the header/trailer and publish them to OpenCensus. If {@link * GrpcResponseMetadata#getMetadata()} returned null, it probably means that the request has never * reached GFE, and it'll increment the gfe_header_missing_counter in this case. * @@ -44,33 +44,27 @@ public class HeaderTracerUnaryCallable extends UnaryCallable { private final UnaryCallable innerCallable; - private final HeaderTracer headerTracer; - private final String spanName; - public HeaderTracerUnaryCallable( - @Nonnull UnaryCallable innerCallable, - @Nonnull HeaderTracer headerTracer, - @Nonnull String spanName) { + public HeaderTracerUnaryCallable(@Nonnull UnaryCallable innerCallable) { this.innerCallable = Preconditions.checkNotNull(innerCallable, "Inner callable must be set"); - this.headerTracer = Preconditions.checkNotNull(headerTracer, "HeaderTracer must be set"); - this.spanName = Preconditions.checkNotNull(spanName, "Span name must be set"); } @Override public ApiFuture futureCall(RequestT request, ApiCallContext context) { if (RpcViews.isGfeMetricsRegistered()) { final GrpcResponseMetadata responseMetadata = new GrpcResponseMetadata(); - ApiFuture future = - innerCallable.futureCall(request, responseMetadata.addHandlers(context)); + final ApiCallContext contextWithResponseMetadata = responseMetadata.addHandlers(context); + ApiFuture future = innerCallable.futureCall(request, contextWithResponseMetadata); future.addListener( new Runnable() { @Override public void run() { - Metadata metadata = responseMetadata.getMetadata(); - if (metadata != null) { - headerTracer.recordGfeMetadata(metadata, spanName); - } else { - headerTracer.recordGfeMissingHeader(spanName); + // this should always be true + if (contextWithResponseMetadata.getTracer() instanceof BigtableTracer) { + BigtableTracer tracer = (BigtableTracer) contextWithResponseMetadata.getTracer(); + Metadata metadata = responseMetadata.getMetadata(); + Long latency = Util.getGfeLatency(metadata); + tracer.recordGfeMetadata(latency); } } }, diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/MetricsTracer.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/MetricsTracer.java index 3d95324505..3d3f6348be 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/MetricsTracer.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/MetricsTracer.java @@ -16,7 +16,6 @@ package com.google.cloud.bigtable.data.v2.stub.metrics; import com.google.api.gax.tracing.ApiTracerFactory.OperationType; -import com.google.api.gax.tracing.BaseApiTracer; import com.google.api.gax.tracing.SpanName; import com.google.common.base.Stopwatch; import io.opencensus.stats.MeasureMap; @@ -34,7 +33,7 @@ import javax.annotation.Nullable; import org.threeten.bp.Duration; -class MetricsTracer extends BaseApiTracer { +class MetricsTracer extends BigtableTracer { private final OperationType operationType; @@ -57,6 +56,8 @@ class MetricsTracer extends BaseApiTracer { private Stopwatch attemptTimer; private long attemptResponseCount = 0; + private volatile int attempt = 0; + MetricsTracer( OperationType operationType, Tagger tagger, @@ -129,6 +130,7 @@ public void connectionSelected(String s) { @Override public void attemptStarted(int i) { + attempt = i; attemptCount++; attemptTimer = Stopwatch.createStarted(); attemptResponseCount = 0; @@ -203,6 +205,24 @@ public void batchRequestSent(long elementCount, long requestSize) { // noop } + @Override + public int getAttempt() { + return attempt; + } + + @Override + public void recordGfeMetadata(@Nullable Long latency) { + MeasureMap measures = stats.newMeasureMap(); + if (latency != null) { + measures + .put(RpcMeasureConstants.BIGTABLE_GFE_LATENCY, latency) + .put(RpcMeasureConstants.BIGTABLE_GFE_HEADER_MISSING_COUNT, 0L); + } else { + measures.put(RpcMeasureConstants.BIGTABLE_GFE_HEADER_MISSING_COUNT, 1L); + } + measures.record(newTagCtxBuilder().build()); + } + private TagContextBuilder newTagCtxBuilder() { TagContextBuilder tagCtx = tagger diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersServerStreamingCallable.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersServerStreamingCallable.java new file mode 100644 index 0000000000..edc794c230 --- /dev/null +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersServerStreamingCallable.java @@ -0,0 +1,46 @@ +/* + * Copyright 2021 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 + * + * https://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.google.cloud.bigtable.data.v2.stub.metrics; + +import com.google.api.core.InternalApi; +import com.google.api.gax.rpc.ApiCallContext; +import com.google.api.gax.rpc.ResponseObserver; +import com.google.api.gax.rpc.ServerStreamingCallable; + +/** + * A callable that injects client timestamp and current attempt number to request headers. Attempt + * number starts from 0. + */ +@InternalApi("For internal use only") +public final class StatsHeadersServerStreamingCallable + extends ServerStreamingCallable { + private final ServerStreamingCallable innerCallable; + + public StatsHeadersServerStreamingCallable(ServerStreamingCallable innerCallable) { + this.innerCallable = innerCallable; + } + + @Override + public void call( + RequestT request, + ResponseObserver responseObserver, + ApiCallContext apiCallContext) { + ApiCallContext newCallContext = + apiCallContext.withExtraHeaders(Util.createStatsHeaders(apiCallContext)); + innerCallable.call(request, responseObserver, newCallContext); + } +} diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersUnaryCallable.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersUnaryCallable.java new file mode 100644 index 0000000000..1e7b67a6fb --- /dev/null +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersUnaryCallable.java @@ -0,0 +1,43 @@ +/* + * Copyright 2021 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 + * + * https://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.google.cloud.bigtable.data.v2.stub.metrics; + +import com.google.api.core.ApiFuture; +import com.google.api.core.InternalApi; +import com.google.api.gax.rpc.ApiCallContext; +import com.google.api.gax.rpc.UnaryCallable; + +/** + * A callable that injects client timestamp and current attempt number to request headers. Attempt + * number starts from 0. + */ +@InternalApi("For internal use only") +public final class StatsHeadersUnaryCallable + extends UnaryCallable { + private final UnaryCallable innerCallable; + + public StatsHeadersUnaryCallable(UnaryCallable innerCallable) { + this.innerCallable = innerCallable; + } + + @Override + public ApiFuture futureCall(RequestT request, ApiCallContext apiCallContext) { + ApiCallContext newCallContext = + apiCallContext.withExtraHeaders(Util.createStatsHeaders(apiCallContext)); + return innerCallable.futureCall(request, newCallContext); + } +} diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/Util.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/Util.java index ff40aca387..00995b717a 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/Util.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/Util.java @@ -15,20 +15,39 @@ */ package com.google.cloud.bigtable.data.v2.stub.metrics; +import com.google.api.gax.rpc.ApiCallContext; import com.google.api.gax.rpc.ApiException; import com.google.api.gax.rpc.StatusCode; import com.google.api.gax.rpc.StatusCode.Code; +import com.google.common.collect.ImmutableMap; +import io.grpc.Metadata; import io.grpc.Status; import io.grpc.StatusException; import io.grpc.StatusRuntimeException; import io.opencensus.tags.TagValue; +import java.time.Instant; +import java.time.temporal.ChronoUnit; +import java.util.Arrays; +import java.util.List; +import java.util.Map; import java.util.concurrent.CancellationException; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import javax.annotation.Nullable; /** Utilities to help integrating with OpenCensus. */ class Util { + static final Metadata.Key ATTEMPT_HEADER_KEY = + Metadata.Key.of("bigtable-attempt", Metadata.ASCII_STRING_MARSHALLER); + static final Metadata.Key ATTEMPT_EPOCH_KEY = + Metadata.Key.of("bigtable-client-attempt-epoch-usec", Metadata.ASCII_STRING_MARSHALLER); + + private static final Metadata.Key SERVER_TIMING_HEADER_KEY = + Metadata.Key.of("server-timing", Metadata.ASCII_STRING_MARSHALLER); + private static final Pattern SERVER_TIMING_HEADER_PATTERN = Pattern.compile(".*dur=(?\\d+)"); + private static final TagValue OK_STATUS = TagValue.create(StatusCode.Code.OK.toString()); /** Convert an exception into a value that can be used as an OpenCensus tag value. */ @@ -71,4 +90,34 @@ static TagValue extractStatus(Future future) { } return extractStatus(error); } + + /** + * Add attempt number and client timestamp from api call context to request headers. Attempt + * number starts from 0. + */ + static Map> createStatsHeaders(ApiCallContext apiCallContext) { + ImmutableMap.Builder> headers = ImmutableMap.builder(); + headers.put( + ATTEMPT_EPOCH_KEY.name(), + Arrays.asList(String.valueOf(Instant.EPOCH.until(Instant.now(), ChronoUnit.MICROS)))); + // This should always be true + if (apiCallContext.getTracer() instanceof BigtableTracer) { + int attemptCount = ((BigtableTracer) apiCallContext.getTracer()).getAttempt(); + headers.put(ATTEMPT_HEADER_KEY.name(), Arrays.asList(String.valueOf(attemptCount))); + } + return headers.build(); + } + + static Long getGfeLatency(Metadata metadata) { + if (metadata != null && metadata.get(SERVER_TIMING_HEADER_KEY) != null) { + String serverTiming = metadata.get(SERVER_TIMING_HEADER_KEY); + Matcher matcher = SERVER_TIMING_HEADER_PATTERN.matcher(serverTiming); + // this should always be true + if (matcher.find()) { + long latency = Long.valueOf(matcher.group("dur")); + return latency; + } + } + return null; + } } diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClientTest.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClientTest.java index 28aecf6559..37d63a8f63 100644 --- a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClientTest.java +++ b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClientTest.java @@ -52,7 +52,6 @@ import com.google.bigtable.admin.v2.PartialUpdateInstanceRequest; import com.google.bigtable.admin.v2.ProjectName; import com.google.bigtable.admin.v2.StorageType; -import com.google.bigtable.admin.v2.TableName; import com.google.bigtable.admin.v2.UpdateAppProfileRequest; import com.google.common.collect.Lists; import com.google.iam.v1.Binding; @@ -67,6 +66,7 @@ import com.google.protobuf.ByteString; import com.google.protobuf.Empty; import com.google.protobuf.FieldMask; +import com.google.protobuf.Timestamp; import io.grpc.StatusRuntimeException; import java.io.IOException; import java.util.ArrayList; @@ -130,6 +130,7 @@ public void createInstanceTest() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -188,6 +189,7 @@ public void createInstanceTest2() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -246,6 +248,7 @@ public void getInstanceTest() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); mockBigtableInstanceAdmin.addResponse(expectedResponse); @@ -286,6 +289,7 @@ public void getInstanceTest2() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); mockBigtableInstanceAdmin.addResponse(expectedResponse); @@ -406,6 +410,7 @@ public void updateInstanceTest() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); mockBigtableInstanceAdmin.addResponse(expectedResponse); @@ -414,6 +419,7 @@ public void updateInstanceTest() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); Instance actualResponse = client.updateInstance(request); @@ -428,6 +434,7 @@ public void updateInstanceTest() throws Exception { Assert.assertEquals(request.getState(), actualRequest.getState()); Assert.assertEquals(request.getType(), actualRequest.getType()); Assert.assertEquals(request.getLabelsMap(), actualRequest.getLabelsMap()); + Assert.assertEquals(request.getCreateTime(), actualRequest.getCreateTime()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), @@ -445,6 +452,7 @@ public void updateInstanceExceptionTest() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); client.updateInstance(request); Assert.fail("No exception raised"); @@ -460,6 +468,7 @@ public void partialUpdateInstanceTest() throws Exception { .setName(InstanceName.of("[PROJECT]", "[INSTANCE]").toString()) .setDisplayName("displayName1714148973") .putAllLabels(new HashMap()) + .setCreateTime(Timestamp.newBuilder().build()) .build(); Operation resultOperation = Operation.newBuilder() @@ -1375,7 +1384,7 @@ public void getIamPolicyTest() throws Exception { .build(); mockBigtableInstanceAdmin.addResponse(expectedResponse); - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); Policy actualResponse = client.getIamPolicy(resource); Assert.assertEquals(expectedResponse, actualResponse); @@ -1397,7 +1406,7 @@ public void getIamPolicyExceptionTest() throws Exception { mockBigtableInstanceAdmin.addException(exception); try { - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); client.getIamPolicy(resource); Assert.fail("No exception raised"); } catch (InvalidArgumentException e) { @@ -1455,7 +1464,7 @@ public void setIamPolicyTest() throws Exception { .build(); mockBigtableInstanceAdmin.addResponse(expectedResponse); - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); Policy policy = Policy.newBuilder().build(); Policy actualResponse = client.setIamPolicy(resource, policy); @@ -1479,7 +1488,7 @@ public void setIamPolicyExceptionTest() throws Exception { mockBigtableInstanceAdmin.addException(exception); try { - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); Policy policy = Policy.newBuilder().build(); client.setIamPolicy(resource, policy); Assert.fail("No exception raised"); @@ -1537,7 +1546,7 @@ public void testIamPermissionsTest() throws Exception { TestIamPermissionsResponse.newBuilder().addAllPermissions(new ArrayList()).build(); mockBigtableInstanceAdmin.addResponse(expectedResponse); - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); List permissions = new ArrayList<>(); TestIamPermissionsResponse actualResponse = client.testIamPermissions(resource, permissions); @@ -1561,7 +1570,7 @@ public void testIamPermissionsExceptionTest() throws Exception { mockBigtableInstanceAdmin.addException(exception); try { - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); List permissions = new ArrayList<>(); client.testIamPermissions(resource, permissions); Assert.fail("No exception raised"); diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClientTest.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClientTest.java index a944dddfbf..56071484f4 100644 --- a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClientTest.java +++ b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClientTest.java @@ -29,6 +29,7 @@ import com.google.api.gax.rpc.InvalidArgumentException; import com.google.api.gax.rpc.StatusCode; import com.google.api.resourcenames.ResourceName; +import com.google.bigtable.admin.v2.AppProfileName; import com.google.bigtable.admin.v2.Backup; import com.google.bigtable.admin.v2.BackupName; import com.google.bigtable.admin.v2.CheckConsistencyRequest; @@ -1953,7 +1954,7 @@ public void getIamPolicyTest() throws Exception { .build(); mockBigtableTableAdmin.addResponse(expectedResponse); - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); Policy actualResponse = client.getIamPolicy(resource); Assert.assertEquals(expectedResponse, actualResponse); @@ -1975,7 +1976,7 @@ public void getIamPolicyExceptionTest() throws Exception { mockBigtableTableAdmin.addException(exception); try { - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); client.getIamPolicy(resource); Assert.fail("No exception raised"); } catch (InvalidArgumentException e) { @@ -2033,7 +2034,7 @@ public void setIamPolicyTest() throws Exception { .build(); mockBigtableTableAdmin.addResponse(expectedResponse); - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); Policy policy = Policy.newBuilder().build(); Policy actualResponse = client.setIamPolicy(resource, policy); @@ -2057,7 +2058,7 @@ public void setIamPolicyExceptionTest() throws Exception { mockBigtableTableAdmin.addException(exception); try { - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); Policy policy = Policy.newBuilder().build(); client.setIamPolicy(resource, policy); Assert.fail("No exception raised"); @@ -2115,7 +2116,7 @@ public void testIamPermissionsTest() throws Exception { TestIamPermissionsResponse.newBuilder().addAllPermissions(new ArrayList()).build(); mockBigtableTableAdmin.addResponse(expectedResponse); - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); List permissions = new ArrayList<>(); TestIamPermissionsResponse actualResponse = client.testIamPermissions(resource, permissions); @@ -2139,7 +2140,7 @@ public void testIamPermissionsExceptionTest() throws Exception { mockBigtableTableAdmin.addException(exception); try { - ResourceName resource = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); + ResourceName resource = AppProfileName.of("[PROJECT]", "[INSTANCE]", "[APP_PROFILE]"); List permissions = new ArrayList<>(); client.testIamPermissions(resource, permissions); Assert.fail("No exception raised"); diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettingsTest.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettingsTest.java index 8af4bdafbd..c4e5ea2e40 100644 --- a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettingsTest.java +++ b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettingsTest.java @@ -33,7 +33,6 @@ import com.google.cloud.bigtable.data.v2.models.Query; import com.google.cloud.bigtable.data.v2.models.Row; import com.google.cloud.bigtable.data.v2.models.RowMutation; -import com.google.cloud.bigtable.data.v2.stub.metrics.HeaderTracer; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Range; @@ -77,7 +76,6 @@ public void settingsAreNotLostTest() { CredentialsProvider credentialsProvider = Mockito.mock(CredentialsProvider.class); WatchdogProvider watchdogProvider = Mockito.mock(WatchdogProvider.class); Duration watchdogInterval = Duration.ofSeconds(12); - HeaderTracer headerTracer = Mockito.mock(HeaderTracer.class); EnhancedBigtableStubSettings.Builder builder = EnhancedBigtableStubSettings.newBuilder() @@ -88,8 +86,7 @@ public void settingsAreNotLostTest() { .setEndpoint(endpoint) .setCredentialsProvider(credentialsProvider) .setStreamWatchdogProvider(watchdogProvider) - .setStreamWatchdogCheckInterval(watchdogInterval) - .setHeaderTracer(headerTracer); + .setStreamWatchdogCheckInterval(watchdogInterval); verifyBuilder( builder, @@ -100,8 +97,7 @@ public void settingsAreNotLostTest() { endpoint, credentialsProvider, watchdogProvider, - watchdogInterval, - headerTracer); + watchdogInterval); verifySettings( builder.build(), projectId, @@ -111,8 +107,7 @@ public void settingsAreNotLostTest() { endpoint, credentialsProvider, watchdogProvider, - watchdogInterval, - headerTracer); + watchdogInterval); verifyBuilder( builder.build().toBuilder(), projectId, @@ -122,8 +117,7 @@ public void settingsAreNotLostTest() { endpoint, credentialsProvider, watchdogProvider, - watchdogInterval, - headerTracer); + watchdogInterval); } private void verifyBuilder( @@ -135,8 +129,7 @@ private void verifyBuilder( String endpoint, CredentialsProvider credentialsProvider, WatchdogProvider watchdogProvider, - Duration watchdogInterval, - HeaderTracer headerTracer) { + Duration watchdogInterval) { assertThat(builder.getProjectId()).isEqualTo(projectId); assertThat(builder.getInstanceId()).isEqualTo(instanceId); assertThat(builder.getAppProfileId()).isEqualTo(appProfileId); @@ -145,7 +138,6 @@ private void verifyBuilder( assertThat(builder.getCredentialsProvider()).isEqualTo(credentialsProvider); assertThat(builder.getStreamWatchdogProvider()).isSameInstanceAs(watchdogProvider); assertThat(builder.getStreamWatchdogCheckInterval()).isEqualTo(watchdogInterval); - assertThat(builder.getHeaderTracer()).isEqualTo(headerTracer); } private void verifySettings( @@ -157,8 +149,7 @@ private void verifySettings( String endpoint, CredentialsProvider credentialsProvider, WatchdogProvider watchdogProvider, - Duration watchdogInterval, - HeaderTracer headerTracer) { + Duration watchdogInterval) { assertThat(settings.getProjectId()).isEqualTo(projectId); assertThat(settings.getInstanceId()).isEqualTo(instanceId); assertThat(settings.getAppProfileId()).isEqualTo(appProfileId); @@ -167,7 +158,6 @@ private void verifySettings( assertThat(settings.getCredentialsProvider()).isEqualTo(credentialsProvider); assertThat(settings.getStreamWatchdogProvider()).isSameInstanceAs(watchdogProvider); assertThat(settings.getStreamWatchdogCheckInterval()).isEqualTo(watchdogInterval); - assertThat(settings.getHeaderTracer()).isEqualTo(headerTracer); } @Test @@ -696,26 +686,12 @@ public void isRefreshingChannelFalseValueTest() { assertThat(builder.build().toBuilder().isRefreshingChannel()).isFalse(); } - @Test - public void verifyDefaultHeaderTracerNotNullTest() { - String dummyProjectId = "my-project"; - String dummyInstanceId = "my-instance"; - EnhancedBigtableStubSettings.Builder builder = - EnhancedBigtableStubSettings.newBuilder() - .setProjectId(dummyProjectId) - .setInstanceId(dummyInstanceId); - assertThat(builder.getHeaderTracer()).isNotNull(); - assertThat(builder.build().getHeaderTracer()).isNotNull(); - assertThat(builder.build().toBuilder().getHeaderTracer()).isNotNull(); - } - static final String[] SETTINGS_LIST = { "projectId", "instanceId", "appProfileId", "isRefreshingChannel", "primedTableIds", - "headerTracer", "jwtAudienceMapping", "readRowsSettings", "readRowSettings", diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracerTest.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracerTest.java index cedb227bad..5d69c19f2b 100644 --- a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracerTest.java +++ b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/CompositeTracerTest.java @@ -23,6 +23,7 @@ import com.google.api.gax.tracing.ApiTracer; import com.google.api.gax.tracing.ApiTracer.Scope; import com.google.common.collect.ImmutableList; +import org.junit.Assert; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -39,12 +40,14 @@ public class CompositeTracerTest { @Mock private ApiTracer child1; @Mock private ApiTracer child2; + @Mock private BigtableTracer child3; + @Mock private BigtableTracer child4; private CompositeTracer compositeTracer; @Before public void setup() { - compositeTracer = new CompositeTracer(ImmutableList.of(child1, child2)); + compositeTracer = new CompositeTracer(ImmutableList.of(child1, child2, child3, child4)); } @Test @@ -55,10 +58,19 @@ public void testInScope() { Scope scope2 = mock(Scope.class); when(child2.inScope()).thenReturn(scope2); + Scope scope3 = mock(Scope.class); + when(child3.inScope()).thenReturn(scope3); + + Scope scope4 = mock(Scope.class); + when(child4.inScope()).thenReturn(scope4); + Scope parentScope = compositeTracer.inScope(); parentScope.close(); verify(scope1, times(1)).close(); + verify(scope2, times(1)).close(); + verify(scope3, times(1)).close(); + verify(scope4, times(1)).close(); } @Test @@ -66,6 +78,8 @@ public void testOperationSucceeded() { compositeTracer.operationSucceeded(); verify(child1, times(1)).operationSucceeded(); verify(child2, times(1)).operationSucceeded(); + verify(child3, times(1)).operationSucceeded(); + verify(child4, times(1)).operationSucceeded(); } @Test @@ -73,6 +87,8 @@ public void testOperationCancelled() { compositeTracer.operationCancelled(); verify(child1, times(1)).operationCancelled(); verify(child2, times(1)).operationCancelled(); + verify(child3, times(1)).operationCancelled(); + verify(child4, times(1)).operationCancelled(); } @Test @@ -81,6 +97,8 @@ public void testOperationFailed() { compositeTracer.operationFailed(error); verify(child1, times(1)).operationFailed(error); verify(child2, times(1)).operationFailed(error); + verify(child3, times(1)).operationFailed(error); + verify(child4, times(1)).operationFailed(error); } @Test @@ -88,6 +106,8 @@ public void testConnectionSelected() { compositeTracer.connectionSelected("connection-one"); verify(child1, times(1)).connectionSelected("connection-one"); verify(child2, times(1)).connectionSelected("connection-one"); + verify(child3, times(1)).connectionSelected("connection-one"); + verify(child4, times(1)).connectionSelected("connection-one"); } @Test @@ -95,6 +115,8 @@ public void testAttemptStarted() { compositeTracer.attemptStarted(3); verify(child1, times(1)).attemptStarted(3); verify(child2, times(1)).attemptStarted(3); + verify(child3, times(1)).attemptStarted(3); + verify(child4, times(1)).attemptStarted(3); } @Test @@ -102,6 +124,8 @@ public void testAttemptSucceeded() { compositeTracer.attemptSucceeded(); verify(child1, times(1)).attemptSucceeded(); verify(child2, times(1)).attemptSucceeded(); + verify(child3, times(1)).attemptSucceeded(); + verify(child4, times(1)).attemptSucceeded(); } @Test @@ -109,6 +133,8 @@ public void testAttemptCancelled() { compositeTracer.attemptCancelled(); verify(child1, times(1)).attemptCancelled(); verify(child2, times(1)).attemptCancelled(); + verify(child3, times(1)).attemptCancelled(); + verify(child4, times(1)).attemptCancelled(); } @Test @@ -118,6 +144,8 @@ public void testAttemptFailed() { compositeTracer.attemptFailed(error, delay); verify(child1, times(1)).attemptFailed(error, delay); verify(child2, times(1)).attemptFailed(error, delay); + verify(child3, times(1)).attemptFailed(error, delay); + verify(child4, times(1)).attemptFailed(error, delay); } @Test @@ -126,6 +154,8 @@ public void testAttemptFailedRetriesExhausted() { compositeTracer.attemptFailedRetriesExhausted(error); verify(child1, times(1)).attemptFailedRetriesExhausted(error); verify(child2, times(1)).attemptFailedRetriesExhausted(error); + verify(child3, times(1)).attemptFailedRetriesExhausted(error); + verify(child4, times(1)).attemptFailedRetriesExhausted(error); } @Test @@ -134,6 +164,8 @@ public void testAttemptPermanentFailure() { compositeTracer.attemptPermanentFailure(error); verify(child1, times(1)).attemptPermanentFailure(error); verify(child2, times(1)).attemptPermanentFailure(error); + verify(child3, times(1)).attemptPermanentFailure(error); + verify(child4, times(1)).attemptPermanentFailure(error); } @Test @@ -142,6 +174,8 @@ public void testLroStartFailed() { compositeTracer.lroStartFailed(error); verify(child1, times(1)).lroStartFailed(error); verify(child2, times(1)).lroStartFailed(error); + verify(child3, times(1)).lroStartFailed(error); + verify(child4, times(1)).lroStartFailed(error); } @Test @@ -149,6 +183,8 @@ public void testLroStartSucceeded() { compositeTracer.lroStartSucceeded(); verify(child1, times(1)).lroStartSucceeded(); verify(child2, times(1)).lroStartSucceeded(); + verify(child3, times(1)).lroStartSucceeded(); + verify(child4, times(1)).lroStartSucceeded(); } @Test @@ -156,6 +192,8 @@ public void testResponseReceived() { compositeTracer.responseReceived(); verify(child1, times(1)).responseReceived(); verify(child2, times(1)).responseReceived(); + verify(child3, times(1)).responseReceived(); + verify(child4, times(1)).responseReceived(); } @Test @@ -163,6 +201,8 @@ public void testRequestSent() { compositeTracer.requestSent(); verify(child1, times(1)).requestSent(); verify(child2, times(1)).requestSent(); + verify(child3, times(1)).requestSent(); + verify(child4, times(1)).requestSent(); } @Test @@ -170,5 +210,20 @@ public void testBatchRequestSent() { compositeTracer.batchRequestSent(2, 20); verify(child1, times(1)).batchRequestSent(2, 20); verify(child2, times(1)).batchRequestSent(2, 20); + verify(child3, times(1)).batchRequestSent(2, 20); + verify(child4, times(1)).batchRequestSent(2, 20); + } + + @Test + public void testGetAttempt() { + compositeTracer.attemptStarted(2); + Assert.assertEquals(2, compositeTracer.getAttempt()); + } + + @Test + public void testRecordGfeLatency() { + compositeTracer.recordGfeMetadata(20L); + verify(child3, times(1)).recordGfeMetadata(20L); + verify(child4, times(1)).recordGfeMetadata(20L); } } diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerTest.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerTest.java deleted file mode 100644 index 30e24dbfe3..0000000000 --- a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/HeaderTracerTest.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright 2020 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 - * - * https://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.google.cloud.bigtable.data.v2.stub.metrics; - -import static com.google.common.truth.Truth.assertThat; - -import com.google.common.collect.ImmutableMap; -import io.opencensus.impl.stats.StatsComponentImpl; -import io.opencensus.stats.StatsComponent; -import io.opencensus.stats.StatsRecorder; -import io.opencensus.tags.TagKey; -import io.opencensus.tags.TagValue; -import io.opencensus.tags.Tagger; -import java.util.Map; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; -import org.mockito.Mockito; - -@RunWith(JUnit4.class) -public class HeaderTracerTest { - - private final StatsComponent localStats = new StatsComponentImpl(); - - @Test - public void testDefaultBuilder() { - HeaderTracer.Builder builder = HeaderTracer.newBuilder(); - HeaderTracer tracer = builder.build(); - assertThat(tracer.getStats()).isNotNull(); - assertThat(tracer.getTagger()).isNotNull(); - assertThat(tracer.getStatsAttributes()).isNotNull(); - assertThat(tracer.getStatsAttributes()).isEmpty(); - } - - @Test - public void testBuilder() { - HeaderTracer.Builder builder = HeaderTracer.newBuilder(); - Map attrs = - ImmutableMap.of(TagKey.create("fake-key"), TagValue.create("fake-value")); - Tagger tagger = Mockito.mock(Tagger.class); - StatsRecorder stats = localStats.getStatsRecorder(); - builder.setStats(stats).setStatsAttributes(attrs).setTagger(tagger); - HeaderTracer headerTracer = builder.build(); - assertThat(headerTracer.getStats()).isEqualTo(stats); - assertThat(headerTracer.getTagger()).isEqualTo(tagger); - assertThat(headerTracer.getStatsAttributes()).isEqualTo(attrs); - } - - @Test - public void testToBuilder() { - HeaderTracer.Builder builder = HeaderTracer.newBuilder(); - Map attrs = - ImmutableMap.of(TagKey.create("fake-key"), TagValue.create("fake-value")); - Tagger tagger = Mockito.mock(Tagger.class); - StatsRecorder stats = localStats.getStatsRecorder(); - builder.setStats(stats).setStatsAttributes(attrs).setTagger(tagger); - HeaderTracer headerTracer = builder.build(); - - HeaderTracer.Builder newBuilder = headerTracer.toBuilder(); - assertThat(newBuilder.build().getStats()).isEqualTo(stats); - assertThat(newBuilder.build().getTagger()).isEqualTo(tagger); - assertThat(newBuilder.build().getStatsAttributes()).isEqualTo(attrs); - } -} diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersCallableTest.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersCallableTest.java new file mode 100644 index 0000000000..c59a848281 --- /dev/null +++ b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/metrics/StatsHeadersCallableTest.java @@ -0,0 +1,275 @@ +/* + * Copyright 2021 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 + * + * https://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.google.cloud.bigtable.data.v2.stub.metrics; + +import static com.google.common.truth.Truth.assertThat; + +import com.google.bigtable.v2.BigtableGrpc.BigtableImplBase; +import com.google.bigtable.v2.CheckAndMutateRowRequest; +import com.google.bigtable.v2.CheckAndMutateRowResponse; +import com.google.bigtable.v2.MutateRowRequest; +import com.google.bigtable.v2.MutateRowResponse; +import com.google.bigtable.v2.MutateRowsRequest; +import com.google.bigtable.v2.MutateRowsResponse; +import com.google.bigtable.v2.ReadModifyWriteRowRequest; +import com.google.bigtable.v2.ReadModifyWriteRowResponse; +import com.google.bigtable.v2.ReadRowsRequest; +import com.google.bigtable.v2.ReadRowsResponse; +import com.google.bigtable.v2.SampleRowKeysRequest; +import com.google.bigtable.v2.SampleRowKeysResponse; +import com.google.cloud.bigtable.data.v2.BigtableDataSettings; +import com.google.cloud.bigtable.data.v2.FakeServiceHelper; +import com.google.cloud.bigtable.data.v2.models.BulkMutation; +import com.google.cloud.bigtable.data.v2.models.ConditionalRowMutation; +import com.google.cloud.bigtable.data.v2.models.Mutation; +import com.google.cloud.bigtable.data.v2.models.Query; +import com.google.cloud.bigtable.data.v2.models.ReadModifyWriteRow; +import com.google.cloud.bigtable.data.v2.models.RowMutation; +import com.google.cloud.bigtable.data.v2.models.RowMutationEntry; +import com.google.cloud.bigtable.data.v2.stub.EnhancedBigtableStub; +import com.google.cloud.bigtable.data.v2.stub.EnhancedBigtableStubSettings; +import com.google.common.collect.Queues; +import com.google.protobuf.ByteString; +import com.google.protobuf.BytesValue; +import com.google.protobuf.StringValue; +import io.grpc.Metadata; +import io.grpc.ServerCall; +import io.grpc.ServerCall.Listener; +import io.grpc.ServerCallHandler; +import io.grpc.ServerInterceptor; +import io.grpc.Status; +import io.grpc.StatusRuntimeException; +import io.grpc.stub.StreamObserver; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.atomic.AtomicInteger; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; + +@RunWith(JUnit4.class) +public class StatsHeadersCallableTest { + private FakeServiceHelper serviceHelper; + + private FakeService fakeService = new FakeService(); + + private EnhancedBigtableStub stub; + + private static final String PROJECT_ID = "fake-project"; + private static final String INSTANCE_ID = "fake-instance"; + private static final String APP_PROFILE_ID = "default"; + private static final String TABLE_ID = "fake-table"; + + private final int attemptCounts = 3; + private MetadataInterceptor metadataInterceptor; + + @Before + public void setUp() throws Exception { + metadataInterceptor = new MetadataInterceptor(); + serviceHelper = new FakeServiceHelper(metadataInterceptor, fakeService); + serviceHelper.start(); + + EnhancedBigtableStubSettings settings = + BigtableDataSettings.newBuilderForEmulator(serviceHelper.getPort()) + .setProjectId(PROJECT_ID) + .setInstanceId(INSTANCE_ID) + .setAppProfileId(APP_PROFILE_ID) + .build() + .getStubSettings(); + stub = EnhancedBigtableStub.create(settings); + } + + @After + public void tearDown() { + stub.close(); + serviceHelper.shutdown(); + } + + @Test + public void testReadRowsHeaders() throws Exception { + long startTimestamp = System.currentTimeMillis() * 1000; + stub.readRowsCallable().call(Query.create(TABLE_ID).rowKey("key")).iterator().next(); + verifyHeaders(attemptCounts, startTimestamp); + } + + @Test + public void testReadRowHeaders() throws Exception { + long startTimestamp = System.currentTimeMillis() * 1000; + stub.readRowCallable().futureCall(Query.create(TABLE_ID).rowKey("key")).get(); + verifyHeaders(attemptCounts, startTimestamp); + } + + @Test + public void testMutateRowsHeaders() throws Exception { + long startTimestamp = System.currentTimeMillis() * 1000; + stub.bulkMutateRowsCallable() + .futureCall(BulkMutation.create(TABLE_ID).add(RowMutationEntry.create("key"))) + .get(); + verifyHeaders(attemptCounts, startTimestamp); + } + + @Test + public void testMutateRowHeaders() throws Exception { + long startTimestamp = System.currentTimeMillis() * 1000; + stub.mutateRowCallable() + .futureCall(RowMutation.create(TABLE_ID, "key").setCell("f", "q", "value")) + .get(); + verifyHeaders(attemptCounts, startTimestamp); + } + + @Test + public void testSampleRowKeysHeaders() throws Exception { + long startTimestamp = System.currentTimeMillis() * 1000; + stub.sampleRowKeysCallable().call(TABLE_ID).get(0); + verifyHeaders(attemptCounts, startTimestamp); + } + + @Test + public void testCheckAndMutateHeaders() throws Exception { + long startTimestamp = System.currentTimeMillis() * 1000; + stub.checkAndMutateRowCallable() + .call( + ConditionalRowMutation.create(TABLE_ID, "key") + .then(Mutation.create().setCell("f", "q", "value"))); + verifyHeaders(1, startTimestamp); + } + + @Test + public void testReadModifyWriteHeaders() throws Exception { + long startTimestamp = System.currentTimeMillis() * 1000; + stub.readModifyWriteRowCallable() + .call(ReadModifyWriteRow.create(TABLE_ID, "key").append("f", "q", "value")); + verifyHeaders(1, startTimestamp); + } + + @Test + public void testMultipleRequests() throws Exception { + // Send multiple requests and make sure headers are set correctly + long startTimestamp = System.currentTimeMillis() * 1000; + stub.readRowsCallable().call(Query.create(TABLE_ID).rowKey("key")).iterator().next(); + verifyHeaders(attemptCounts, startTimestamp); + + startTimestamp = System.currentTimeMillis() * 1000; + stub.readRowsCallable().call(Query.create(TABLE_ID).rowKey("key")).iterator().next(); + verifyHeaders(1, startTimestamp); + } + + private static class MetadataInterceptor implements ServerInterceptor { + final BlockingQueue headers = Queues.newLinkedBlockingDeque(); + + @Override + public Listener interceptCall( + ServerCall serverCall, + Metadata metadata, + ServerCallHandler serverCallHandler) { + headers.add(metadata); + return serverCallHandler.startCall(serverCall, metadata); + } + } + + private class FakeService extends BigtableImplBase { + AtomicInteger callCount = new AtomicInteger(0); + + @Override + public void readRows(ReadRowsRequest request, StreamObserver observer) { + if (callCount.get() < attemptCounts - 1) { + callCount.incrementAndGet(); + observer.onError(new StatusRuntimeException(Status.UNAVAILABLE)); + return; + } + observer.onNext( + ReadRowsResponse.newBuilder() + .addChunks( + ReadRowsResponse.CellChunk.newBuilder() + .setCommitRow(true) + .setRowKey(ByteString.copyFromUtf8("a")) + .setFamilyName(StringValue.getDefaultInstance()) + .setQualifier(BytesValue.getDefaultInstance()) + .setValueSize(0)) + .build()); + observer.onCompleted(); + } + + @Override + public void mutateRow(MutateRowRequest request, StreamObserver observer) { + if (callCount.get() < attemptCounts - 1) { + callCount.incrementAndGet(); + observer.onError(new StatusRuntimeException(Status.UNAVAILABLE)); + return; + } + observer.onNext(MutateRowResponse.getDefaultInstance()); + observer.onCompleted(); + } + + @Override + public void mutateRows(MutateRowsRequest request, StreamObserver observer) { + if (callCount.get() < attemptCounts - 1) { + callCount.incrementAndGet(); + observer.onError(new StatusRuntimeException(Status.UNAVAILABLE)); + return; + } + observer.onNext(MutateRowsResponse.getDefaultInstance()); + observer.onCompleted(); + } + + @Override + public void sampleRowKeys( + SampleRowKeysRequest request, StreamObserver observer) { + if (callCount.get() < attemptCounts - 1) { + callCount.incrementAndGet(); + observer.onError(new StatusRuntimeException(Status.UNAVAILABLE)); + return; + } + observer.onNext(SampleRowKeysResponse.getDefaultInstance()); + observer.onCompleted(); + } + + @Override + public void checkAndMutateRow( + CheckAndMutateRowRequest request, StreamObserver observer) { + observer.onNext(CheckAndMutateRowResponse.getDefaultInstance()); + observer.onCompleted(); + } + + @Override + public void readModifyWriteRow( + ReadModifyWriteRowRequest request, StreamObserver observer) { + observer.onNext(ReadModifyWriteRowResponse.getDefaultInstance()); + observer.onCompleted(); + } + } + + private void verifyHeaders(int expectedAttemptCounts, long startTimestamp) throws Exception { + assertThat(metadataInterceptor.headers).hasSize(expectedAttemptCounts); + long timestamp = startTimestamp; + + for (int i = 0; i < expectedAttemptCounts; i++) { + Metadata headers = metadataInterceptor.headers.take(); + String attemptCount = headers.get(Util.ATTEMPT_HEADER_KEY); + assertThat(attemptCount).isNotNull(); + assertThat(Integer.valueOf(attemptCount)).isEqualTo(i); + + String clientTimeStr = headers.get(Util.ATTEMPT_EPOCH_KEY); + assertThat(clientTimeStr).isNotNull(); + long clientTime = Long.valueOf(clientTimeStr); + assertThat(clientTime).isAtLeast(timestamp); + + timestamp = clientTime; + } + } +} diff --git a/grpc-google-cloud-bigtable-admin-v2/pom.xml b/grpc-google-cloud-bigtable-admin-v2/pom.xml index 8c32f6ead8..06b7065a53 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.2.0 + 2.3.0 grpc-google-cloud-bigtable-admin-v2 GRPC library for grpc-google-cloud-bigtable-admin-v2 com.google.cloud google-cloud-bigtable-parent - 2.2.0 + 2.3.0 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.2.0 + 2.3.0 pom import com.google.cloud google-cloud-bigtable-bom - 2.2.0 + 2.3.0 pom import diff --git a/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminGrpc.java b/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminGrpc.java index 820a3667e9..30800b532e 100644 --- a/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminGrpc.java +++ b/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminGrpc.java @@ -29,6 +29,7 @@ @javax.annotation.Generated( value = "by gRPC proto compiler", comments = "Source: google/bigtable/admin/v2/bigtable_instance_admin.proto") +@io.grpc.stub.annotations.GrpcGenerated public final class BigtableInstanceAdminGrpc { private BigtableInstanceAdminGrpc() {} diff --git a/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminGrpc.java b/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminGrpc.java index 84fe98d181..c226e35060 100644 --- a/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminGrpc.java +++ b/grpc-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminGrpc.java @@ -29,6 +29,7 @@ @javax.annotation.Generated( value = "by gRPC proto compiler", comments = "Source: google/bigtable/admin/v2/bigtable_table_admin.proto") +@io.grpc.stub.annotations.GrpcGenerated public final class BigtableTableAdminGrpc { private BigtableTableAdminGrpc() {} diff --git a/grpc-google-cloud-bigtable-v2/pom.xml b/grpc-google-cloud-bigtable-v2/pom.xml index 330688820c..dc249028e0 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.2.0 + 2.3.0 grpc-google-cloud-bigtable-v2 GRPC library for grpc-google-cloud-bigtable-v2 com.google.cloud google-cloud-bigtable-parent - 2.2.0 + 2.3.0 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.2.0 + 2.3.0 pom import com.google.cloud google-cloud-bigtable-bom - 2.2.0 + 2.3.0 pom import diff --git a/grpc-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableGrpc.java b/grpc-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableGrpc.java index 86551303fa..ddb99b378f 100644 --- a/grpc-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableGrpc.java +++ b/grpc-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableGrpc.java @@ -27,6 +27,7 @@ @javax.annotation.Generated( value = "by gRPC proto compiler", comments = "Source: google/bigtable/v2/bigtable.proto") +@io.grpc.stub.annotations.GrpcGenerated public final class BigtableGrpc { private BigtableGrpc() {} diff --git a/pom.xml b/pom.xml index e6a0653efe..8e23bc0cfe 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ google-cloud-bigtable-parent pom - 2.2.0 + 2.3.0 Google Cloud Bigtable Parent https://github.com/googleapis/java-bigtable @@ -14,7 +14,7 @@ com.google.cloud google-cloud-shared-config - 1.1.0 + 1.2.1 @@ -267,6 +267,11 @@ + + org.apache.maven.plugins + maven-shade-plugin + 3.2.4 + @@ -302,6 +307,21 @@ + + + with-shaded + + + !skip-shaded + + + + google-cloud-bigtable-stats + + diff --git a/proto-google-cloud-bigtable-admin-v2/clirr-ignored-differences.xml b/proto-google-cloud-bigtable-admin-v2/clirr-ignored-differences.xml index 516cb787c1..696c323a99 100644 --- a/proto-google-cloud-bigtable-admin-v2/clirr-ignored-differences.xml +++ b/proto-google-cloud-bigtable-admin-v2/clirr-ignored-differences.xml @@ -21,14 +21,4 @@ com/google/bigtable/admin/v2/*OrBuilder boolean has*(*) - - - 8001 - com/google/bigtable/admin/v2/CryptoKeyName* - - - - 8001 - com/google/bigtable/admin/v2/CryptoKeyVersionName* - \ No newline at end of file diff --git a/proto-google-cloud-bigtable-admin-v2/pom.xml b/proto-google-cloud-bigtable-admin-v2/pom.xml index b584e341ae..e5993ef9a0 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.2.0 + 2.3.0 proto-google-cloud-bigtable-admin-v2 PROTO library for proto-google-cloud-bigtable-admin-v2 com.google.cloud google-cloud-bigtable-parent - 2.2.0 + 2.3.0 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.2.0 + 2.3.0 pom import com.google.cloud google-cloud-bigtable-bom - 2.2.0 + 2.3.0 pom import diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfile.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfile.java index 0101dfd6bd..ca41c7f286 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfile.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfile.java @@ -1216,7 +1216,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getClusterIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clusterId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, clusterId_); } if (allowTransactionalWrites_ != false) { @@ -1231,7 +1231,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getClusterIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clusterId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, clusterId_); } if (allowTransactionalWrites_ != false) { @@ -2104,13 +2104,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getEtagBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(etag_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, etag_); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, description_); } if (routingPolicyCase_ == 5) { @@ -2130,13 +2130,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getEtagBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(etag_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, etag_); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, description_); } if (routingPolicyCase_ == 5) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Backup.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Backup.java index 0fa7625c14..8d0afd5dff 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Backup.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Backup.java @@ -774,10 +774,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getSourceTableBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTable_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, sourceTable_); } if (expireTime_ != null) { @@ -807,10 +807,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getSourceTableBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTable_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, sourceTable_); } if (expireTime_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfo.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfo.java index 62868b8c9a..2dd94bf584 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfo.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfo.java @@ -365,7 +365,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getBackupBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backup_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, backup_); } if (startTime_ != null) { @@ -374,7 +374,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (endTime_ != null) { output.writeMessage(3, getEndTime()); } - if (!getSourceTableBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTable_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, sourceTable_); } unknownFields.writeTo(output); @@ -386,7 +386,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getBackupBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backup_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, backup_); } if (startTime_ != null) { @@ -395,7 +395,7 @@ public int getSerializedSize() { if (endTime_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getEndTime()); } - if (!getSourceTableBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTable_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, sourceTable_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminProto.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminProto.java index 0969a2efd3..f82410ab23 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminProto.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminProto.java @@ -147,178 +147,180 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "igtable.admin.v2.CreateInstanceRequest.C" + "lustersEntryB\003\340A\002\032R\n\rClustersEntry\022\013\n\003ke" + "y\030\001 \001(\t\0220\n\005value\030\002 \001(\0132!.google.bigtable" - + ".admin.v2.Cluster:\0028\001\"L\n\022GetInstanceRequ" - + "est\0226\n\004name\030\001 \001(\tB(\340A\002\372A\"\n bigtable.goog" - + "leapis.com/Instance\"o\n\024ListInstancesRequ" - + "est\022C\n\006parent\030\001 \001(\tB3\340A\002\372A-\n+cloudresour" - + "cemanager.googleapis.com/Project\022\022\n\npage" - + "_token\030\002 \001(\t\"\201\001\n\025ListInstancesResponse\0225" - + "\n\tinstances\030\001 \003(\0132\".google.bigtable.admi" - + "n.v2.Instance\022\030\n\020failed_locations\030\002 \003(\t\022" - + "\027\n\017next_page_token\030\003 \001(\t\"\217\001\n\034PartialUpda" - + "teInstanceRequest\0229\n\010instance\030\001 \001(\0132\".go" - + "ogle.bigtable.admin.v2.InstanceB\003\340A\002\0224\n\013" - + "update_mask\030\002 \001(\0132\032.google.protobuf.Fiel" - + "dMaskB\003\340A\002\"O\n\025DeleteInstanceRequest\0226\n\004n" - + "ame\030\001 \001(\tB(\340A\002\372A\"\n bigtable.googleapis.c" - + "om/Instance\"\242\001\n\024CreateClusterRequest\0228\n\006" - + "parent\030\001 \001(\tB(\340A\002\372A\"\n bigtable.googleapi" - + "s.com/Instance\022\027\n\ncluster_id\030\002 \001(\tB\003\340A\002\022" - + "7\n\007cluster\030\003 \001(\0132!.google.bigtable.admin" - + ".v2.ClusterB\003\340A\002\"J\n\021GetClusterRequest\0225\n" - + "\004name\030\001 \001(\tB\'\340A\002\372A!\n\037bigtable.googleapis" - + ".com/Cluster\"c\n\023ListClustersRequest\0228\n\006p" - + "arent\030\001 \001(\tB(\340A\002\372A\"\n bigtable.googleapis" - + ".com/Instance\022\022\n\npage_token\030\002 \001(\t\"~\n\024Lis" - + "tClustersResponse\0223\n\010clusters\030\001 \003(\0132!.go" - + "ogle.bigtable.admin.v2.Cluster\022\030\n\020failed" - + "_locations\030\002 \003(\t\022\027\n\017next_page_token\030\003 \001(" - + "\t\"M\n\024DeleteClusterRequest\0225\n\004name\030\001 \001(\tB" - + "\'\340A\002\372A!\n\037bigtable.googleapis.com/Cluster" - + "\"\306\001\n\026CreateInstanceMetadata\022I\n\020original_" - + "request\030\001 \001(\0132/.google.bigtable.admin.v2" - + ".CreateInstanceRequest\0220\n\014request_time\030\002" - + " \001(\0132\032.google.protobuf.Timestamp\022/\n\013fini" - + "sh_time\030\003 \001(\0132\032.google.protobuf.Timestam" - + "p\"\315\001\n\026UpdateInstanceMetadata\022P\n\020original" - + "_request\030\001 \001(\01326.google.bigtable.admin.v" - + "2.PartialUpdateInstanceRequest\0220\n\014reques" - + "t_time\030\002 \001(\0132\032.google.protobuf.Timestamp" - + "\022/\n\013finish_time\030\003 \001(\0132\032.google.protobuf." - + "Timestamp\"\304\001\n\025CreateClusterMetadata\022H\n\020o" - + "riginal_request\030\001 \001(\0132..google.bigtable." - + "admin.v2.CreateClusterRequest\0220\n\014request" - + "_time\030\002 \001(\0132\032.google.protobuf.Timestamp\022" - + "/\n\013finish_time\030\003 \001(\0132\032.google.protobuf.T" - + "imestamp\"\267\001\n\025UpdateClusterMetadata\022;\n\020or" - + "iginal_request\030\001 \001(\0132!.google.bigtable.a" - + "dmin.v2.Cluster\0220\n\014request_time\030\002 \001(\0132\032." - + "google.protobuf.Timestamp\022/\n\013finish_time" - + "\030\003 \001(\0132\032.google.protobuf.Timestamp\"\311\001\n\027C" - + "reateAppProfileRequest\0228\n\006parent\030\001 \001(\tB(" - + "\340A\002\372A\"\n bigtable.googleapis.com/Instance" - + "\022\033\n\016app_profile_id\030\002 \001(\tB\003\340A\002\022>\n\013app_pro" - + "file\030\003 \001(\0132$.google.bigtable.admin.v2.Ap" - + "pProfileB\003\340A\002\022\027\n\017ignore_warnings\030\004 \001(\010\"P" - + "\n\024GetAppProfileRequest\0228\n\004name\030\001 \001(\tB*\340A" - + "\002\372A$\n\"bigtable.googleapis.com/AppProfile" - + "\"y\n\026ListAppProfilesRequest\0228\n\006parent\030\001 \001" - + "(\tB(\340A\002\372A\"\n bigtable.googleapis.com/Inst" - + "ance\022\021\n\tpage_size\030\003 \001(\005\022\022\n\npage_token\030\002 " - + "\001(\t\"\210\001\n\027ListAppProfilesResponse\022:\n\014app_p" - + "rofiles\030\001 \003(\0132$.google.bigtable.admin.v2" - + ".AppProfile\022\027\n\017next_page_token\030\002 \001(\t\022\030\n\020" - + "failed_locations\030\003 \003(\t\"\250\001\n\027UpdateAppProf" - + "ileRequest\022>\n\013app_profile\030\001 \001(\0132$.google" - + ".bigtable.admin.v2.AppProfileB\003\340A\002\0224\n\013up" - + "date_mask\030\002 \001(\0132\032.google.protobuf.FieldM" - + "askB\003\340A\002\022\027\n\017ignore_warnings\030\003 \001(\010\"q\n\027Del" - + "eteAppProfileRequest\0228\n\004name\030\001 \001(\tB*\340A\002\372" - + "A$\n\"bigtable.googleapis.com/AppProfile\022\034" - + "\n\017ignore_warnings\030\002 \001(\010B\003\340A\002\"\032\n\030UpdateAp" - + "pProfileMetadata2\222\036\n\025BigtableInstanceAdm" - + "in\022\332\001\n\016CreateInstance\022/.google.bigtable." - + "admin.v2.CreateInstanceRequest\032\035.google." - + "longrunning.Operation\"x\202\323\344\223\002&\"!/v2/{pare" - + "nt=projects/*}/instances:\001*\332A$parent,ins" - + "tance_id,instance,clusters\312A\"\n\010Instance\022" - + "\026CreateInstanceMetadata\022\221\001\n\013GetInstance\022" - + ",.google.bigtable.admin.v2.GetInstanceRe" - + "quest\032\".google.bigtable.admin.v2.Instanc" - + "e\"0\202\323\344\223\002#\022!/v2/{name=projects/*/instance" - + "s/*}\332A\004name\022\244\001\n\rListInstances\022..google.b" - + "igtable.admin.v2.ListInstancesRequest\032/." - + "google.bigtable.admin.v2.ListInstancesRe" - + "sponse\"2\202\323\344\223\002#\022!/v2/{parent=projects/*}/" - + "instances\332A\006parent\022\206\001\n\016UpdateInstance\022\"." - + "google.bigtable.admin.v2.Instance\032\".goog" - + "le.bigtable.admin.v2.Instance\",\202\323\344\223\002&\032!/" - + "v2/{name=projects/*/instances/*}:\001*\022\350\001\n\025" - + "PartialUpdateInstance\0226.google.bigtable." - + "admin.v2.PartialUpdateInstanceRequest\032\035." - + "google.longrunning.Operation\"x\202\323\344\223\00262*/v" - + "2/{instance.name=projects/*/instances/*}" - + ":\010instance\332A\024instance,update_mask\312A\"\n\010In" - + "stance\022\026UpdateInstanceMetadata\022\213\001\n\016Delet" - + "eInstance\022/.google.bigtable.admin.v2.Del" - + "eteInstanceRequest\032\026.google.protobuf.Emp" - + "ty\"0\202\323\344\223\002#*!/v2/{name=projects/*/instanc" - + "es/*}\332A\004name\022\334\001\n\rCreateCluster\022..google." - + "bigtable.admin.v2.CreateClusterRequest\032\035" - + ".google.longrunning.Operation\"|\202\323\344\223\0027\",/" - + "v2/{parent=projects/*/instances/*}/clust" - + "ers:\007cluster\332A\031parent,cluster_id,cluster" - + "\312A \n\007Cluster\022\025CreateClusterMetadata\022\231\001\n\n" - + "GetCluster\022+.google.bigtable.admin.v2.Ge" - + "tClusterRequest\032!.google.bigtable.admin." - + "v2.Cluster\";\202\323\344\223\002.\022,/v2/{name=projects/*" - + "/instances/*/clusters/*}\332A\004name\022\254\001\n\014List" - + "Clusters\022-.google.bigtable.admin.v2.List" - + "ClustersRequest\032..google.bigtable.admin." - + "v2.ListClustersResponse\"=\202\323\344\223\002.\022,/v2/{pa" - + "rent=projects/*/instances/*}/clusters\332A\006" - + "parent\022\255\001\n\rUpdateCluster\022!.google.bigtab" - + "le.admin.v2.Cluster\032\035.google.longrunning" - + ".Operation\"Z\202\323\344\223\0021\032,/v2/{name=projects/*" - + "/instances/*/clusters/*}:\001*\312A \n\007Cluster\022" - + "\025UpdateClusterMetadata\022\224\001\n\rDeleteCluster" - + "\022..google.bigtable.admin.v2.DeleteCluste" - + "rRequest\032\026.google.protobuf.Empty\";\202\323\344\223\002." - + "*,/v2/{name=projects/*/instances/*/clust" - + "ers/*}\332A\004name\022\325\001\n\020CreateAppProfile\0221.goo" - + "gle.bigtable.admin.v2.CreateAppProfileRe" - + "quest\032$.google.bigtable.admin.v2.AppProf" - + "ile\"h\202\323\344\223\002>\"//v2/{parent=projects/*/inst" - + "ances/*}/appProfiles:\013app_profile\332A!pare" - + "nt,app_profile_id,app_profile\022\245\001\n\rGetApp" - + "Profile\022..google.bigtable.admin.v2.GetAp" + + ".admin.v2.Cluster:\0028\001\"Q\n\022GetInstanceRequ" + + "est\022;\n\004name\030\001 \001(\tB-\340A\002\372A\'\n%bigtableadmin" + + ".googleapis.com/Instance\"o\n\024ListInstance" + + "sRequest\022C\n\006parent\030\001 \001(\tB3\340A\002\372A-\n+cloudr" + + "esourcemanager.googleapis.com/Project\022\022\n" + + "\npage_token\030\002 \001(\t\"\201\001\n\025ListInstancesRespo" + + "nse\0225\n\tinstances\030\001 \003(\0132\".google.bigtable" + + ".admin.v2.Instance\022\030\n\020failed_locations\030\002" + + " \003(\t\022\027\n\017next_page_token\030\003 \001(\t\"\217\001\n\034Partia" + + "lUpdateInstanceRequest\0229\n\010instance\030\001 \001(\013" + + "2\".google.bigtable.admin.v2.InstanceB\003\340A" + + "\002\0224\n\013update_mask\030\002 \001(\0132\032.google.protobuf" + + ".FieldMaskB\003\340A\002\"T\n\025DeleteInstanceRequest" + + "\022;\n\004name\030\001 \001(\tB-\340A\002\372A\'\n%bigtableadmin.go" + + "ogleapis.com/Instance\"\247\001\n\024CreateClusterR" + + "equest\022=\n\006parent\030\001 \001(\tB-\340A\002\372A\'\n%bigtable" + + "admin.googleapis.com/Instance\022\027\n\ncluster" + + "_id\030\002 \001(\tB\003\340A\002\0227\n\007cluster\030\003 \001(\0132!.google" + + ".bigtable.admin.v2.ClusterB\003\340A\002\"O\n\021GetCl" + + "usterRequest\022:\n\004name\030\001 \001(\tB,\340A\002\372A&\n$bigt" + + "ableadmin.googleapis.com/Cluster\"h\n\023List" + + "ClustersRequest\022=\n\006parent\030\001 \001(\tB-\340A\002\372A\'\n" + + "%bigtableadmin.googleapis.com/Instance\022\022" + + "\n\npage_token\030\002 \001(\t\"~\n\024ListClustersRespon" + + "se\0223\n\010clusters\030\001 \003(\0132!.google.bigtable.a" + + "dmin.v2.Cluster\022\030\n\020failed_locations\030\002 \003(" + + "\t\022\027\n\017next_page_token\030\003 \001(\t\"R\n\024DeleteClus" + + "terRequest\022:\n\004name\030\001 \001(\tB,\340A\002\372A&\n$bigtab" + + "leadmin.googleapis.com/Cluster\"\306\001\n\026Creat" + + "eInstanceMetadata\022I\n\020original_request\030\001 " + + "\001(\0132/.google.bigtable.admin.v2.CreateIns" + + "tanceRequest\0220\n\014request_time\030\002 \001(\0132\032.goo" + + "gle.protobuf.Timestamp\022/\n\013finish_time\030\003 " + + "\001(\0132\032.google.protobuf.Timestamp\"\315\001\n\026Upda" + + "teInstanceMetadata\022P\n\020original_request\030\001" + + " \001(\01326.google.bigtable.admin.v2.PartialU" + + "pdateInstanceRequest\0220\n\014request_time\030\002 \001" + + "(\0132\032.google.protobuf.Timestamp\022/\n\013finish" + + "_time\030\003 \001(\0132\032.google.protobuf.Timestamp\"" + + "\304\001\n\025CreateClusterMetadata\022H\n\020original_re" + + "quest\030\001 \001(\0132..google.bigtable.admin.v2.C" + + "reateClusterRequest\0220\n\014request_time\030\002 \001(" + + "\0132\032.google.protobuf.Timestamp\022/\n\013finish_" + + "time\030\003 \001(\0132\032.google.protobuf.Timestamp\"\267" + + "\001\n\025UpdateClusterMetadata\022;\n\020original_req" + + "uest\030\001 \001(\0132!.google.bigtable.admin.v2.Cl" + + "uster\0220\n\014request_time\030\002 \001(\0132\032.google.pro" + + "tobuf.Timestamp\022/\n\013finish_time\030\003 \001(\0132\032.g" + + "oogle.protobuf.Timestamp\"\316\001\n\027CreateAppPr" + + "ofileRequest\022=\n\006parent\030\001 \001(\tB-\340A\002\372A\'\n%bi" + + "gtableadmin.googleapis.com/Instance\022\033\n\016a" + + "pp_profile_id\030\002 \001(\tB\003\340A\002\022>\n\013app_profile\030" + + "\003 \001(\0132$.google.bigtable.admin.v2.AppProf" + + "ileB\003\340A\002\022\027\n\017ignore_warnings\030\004 \001(\010\"U\n\024Get" + + "AppProfileRequest\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n" + + "\'bigtableadmin.googleapis.com/AppProfile" + + "\"~\n\026ListAppProfilesRequest\022=\n\006parent\030\001 \001" + + "(\tB-\340A\002\372A\'\n%bigtableadmin.googleapis.com" + + "/Instance\022\021\n\tpage_size\030\003 \001(\005\022\022\n\npage_tok" + + "en\030\002 \001(\t\"\210\001\n\027ListAppProfilesResponse\022:\n\014" + + "app_profiles\030\001 \003(\0132$.google.bigtable.adm" + + "in.v2.AppProfile\022\027\n\017next_page_token\030\002 \001(" + + "\t\022\030\n\020failed_locations\030\003 \003(\t\"\250\001\n\027UpdateAp" + + "pProfileRequest\022>\n\013app_profile\030\001 \001(\0132$.g" + + "oogle.bigtable.admin.v2.AppProfileB\003\340A\002\022" + + "4\n\013update_mask\030\002 \001(\0132\032.google.protobuf.F" + + "ieldMaskB\003\340A\002\022\027\n\017ignore_warnings\030\003 \001(\010\"v" + + "\n\027DeleteAppProfileRequest\022=\n\004name\030\001 \001(\tB" + + "/\340A\002\372A)\n\'bigtableadmin.googleapis.com/Ap" + + "pProfile\022\034\n\017ignore_warnings\030\002 \001(\010B\003\340A\002\"\032" + + "\n\030UpdateAppProfileMetadata2\222\036\n\025BigtableI" + + "nstanceAdmin\022\332\001\n\016CreateInstance\022/.google" + + ".bigtable.admin.v2.CreateInstanceRequest" + + "\032\035.google.longrunning.Operation\"x\202\323\344\223\002&\"" + + "!/v2/{parent=projects/*}/instances:\001*\332A$" + + "parent,instance_id,instance,clusters\312A\"\n" + + "\010Instance\022\026CreateInstanceMetadata\022\221\001\n\013Ge" + + "tInstance\022,.google.bigtable.admin.v2.Get" + + "InstanceRequest\032\".google.bigtable.admin." + + "v2.Instance\"0\202\323\344\223\002#\022!/v2/{name=projects/" + + "*/instances/*}\332A\004name\022\244\001\n\rListInstances\022" + + "..google.bigtable.admin.v2.ListInstances" + + "Request\032/.google.bigtable.admin.v2.ListI" + + "nstancesResponse\"2\202\323\344\223\002#\022!/v2/{parent=pr" + + "ojects/*}/instances\332A\006parent\022\206\001\n\016UpdateI" + + "nstance\022\".google.bigtable.admin.v2.Insta" + + "nce\032\".google.bigtable.admin.v2.Instance\"" + + ",\202\323\344\223\002&\032!/v2/{name=projects/*/instances/" + + "*}:\001*\022\350\001\n\025PartialUpdateInstance\0226.google" + + ".bigtable.admin.v2.PartialUpdateInstance" + + "Request\032\035.google.longrunning.Operation\"x" + + "\202\323\344\223\00262*/v2/{instance.name=projects/*/in" + + "stances/*}:\010instance\332A\024instance,update_m" + + "ask\312A\"\n\010Instance\022\026UpdateInstanceMetadata" + + "\022\213\001\n\016DeleteInstance\022/.google.bigtable.ad" + + "min.v2.DeleteInstanceRequest\032\026.google.pr" + + "otobuf.Empty\"0\202\323\344\223\002#*!/v2/{name=projects" + + "/*/instances/*}\332A\004name\022\334\001\n\rCreateCluster" + + "\022..google.bigtable.admin.v2.CreateCluste" + + "rRequest\032\035.google.longrunning.Operation\"" + + "|\202\323\344\223\0027\",/v2/{parent=projects/*/instance" + + "s/*}/clusters:\007cluster\332A\031parent,cluster_" + + "id,cluster\312A \n\007Cluster\022\025CreateClusterMet" + + "adata\022\231\001\n\nGetCluster\022+.google.bigtable.a" + + "dmin.v2.GetClusterRequest\032!.google.bigta" + + "ble.admin.v2.Cluster\";\202\323\344\223\002.\022,/v2/{name=" + + "projects/*/instances/*/clusters/*}\332A\004nam" + + "e\022\254\001\n\014ListClusters\022-.google.bigtable.adm" + + "in.v2.ListClustersRequest\032..google.bigta" + + "ble.admin.v2.ListClustersResponse\"=\202\323\344\223\002" + + ".\022,/v2/{parent=projects/*/instances/*}/c" + + "lusters\332A\006parent\022\255\001\n\rUpdateCluster\022!.goo" + + "gle.bigtable.admin.v2.Cluster\032\035.google.l" + + "ongrunning.Operation\"Z\202\323\344\223\0021\032,/v2/{name=" + + "projects/*/instances/*/clusters/*}:\001*\312A " + + "\n\007Cluster\022\025UpdateClusterMetadata\022\224\001\n\rDel" + + "eteCluster\022..google.bigtable.admin.v2.De" + + "leteClusterRequest\032\026.google.protobuf.Emp" + + "ty\";\202\323\344\223\002.*,/v2/{name=projects/*/instanc" + + "es/*/clusters/*}\332A\004name\022\325\001\n\020CreateAppPro" + + "file\0221.google.bigtable.admin.v2.CreateAp" + "pProfileRequest\032$.google.bigtable.admin." - + "v2.AppProfile\">\202\323\344\223\0021\022//v2/{name=project" - + "s/*/instances/*/appProfiles/*}\332A\004name\022\270\001" - + "\n\017ListAppProfiles\0220.google.bigtable.admi" - + "n.v2.ListAppProfilesRequest\0321.google.big" - + "table.admin.v2.ListAppProfilesResponse\"@" - + "\202\323\344\223\0021\022//v2/{parent=projects/*/instances" - + "/*}/appProfiles\332A\006parent\022\372\001\n\020UpdateAppPr" - + "ofile\0221.google.bigtable.admin.v2.UpdateA" - + "ppProfileRequest\032\035.google.longrunning.Op" - + "eration\"\223\001\202\323\344\223\002J2;/v2/{app_profile.name=" - + "projects/*/instances/*/appProfiles/*}:\013a" - + "pp_profile\332A\027app_profile,update_mask\312A&\n" - + "\nAppProfile\022\030UpdateAppProfileMetadata\022\235\001" - + "\n\020DeleteAppProfile\0221.google.bigtable.adm" - + "in.v2.DeleteAppProfileRequest\032\026.google.p" - + "rotobuf.Empty\">\202\323\344\223\0021*//v2/{name=project" - + "s/*/instances/*/appProfiles/*}\332A\004name\022\223\001" - + "\n\014GetIamPolicy\022\".google.iam.v1.GetIamPol" - + "icyRequest\032\025.google.iam.v1.Policy\"H\202\323\344\223\002" + + "v2.AppProfile\"h\202\323\344\223\002>\"//v2/{parent=proje" + + "cts/*/instances/*}/appProfiles:\013app_prof" + + "ile\332A!parent,app_profile_id,app_profile\022" + + "\245\001\n\rGetAppProfile\022..google.bigtable.admi" + + "n.v2.GetAppProfileRequest\032$.google.bigta" + + "ble.admin.v2.AppProfile\">\202\323\344\223\0021\022//v2/{na" + + "me=projects/*/instances/*/appProfiles/*}" + + "\332A\004name\022\270\001\n\017ListAppProfiles\0220.google.big" + + "table.admin.v2.ListAppProfilesRequest\0321." + + "google.bigtable.admin.v2.ListAppProfiles" + + "Response\"@\202\323\344\223\0021\022//v2/{parent=projects/*" + + "/instances/*}/appProfiles\332A\006parent\022\372\001\n\020U" + + "pdateAppProfile\0221.google.bigtable.admin." + + "v2.UpdateAppProfileRequest\032\035.google.long" + + "running.Operation\"\223\001\202\323\344\223\002J2;/v2/{app_pro" + + "file.name=projects/*/instances/*/appProf" + + "iles/*}:\013app_profile\332A\027app_profile,updat" + + "e_mask\312A&\n\nAppProfile\022\030UpdateAppProfileM" + + "etadata\022\235\001\n\020DeleteAppProfile\0221.google.bi" + + "gtable.admin.v2.DeleteAppProfileRequest\032" + + "\026.google.protobuf.Empty\">\202\323\344\223\0021*//v2/{na" + + "me=projects/*/instances/*/appProfiles/*}" + + "\332A\004name\022\223\001\n\014GetIamPolicy\022\".google.iam.v1" + + ".GetIamPolicyRequest\032\025.google.iam.v1.Pol" + + "icy\"H\202\323\344\223\0027\"2/v2/{resource=projects/*/in" + + "stances/*}:getIamPolicy:\001*\332A\010resource\022\232\001" + + "\n\014SetIamPolicy\022\".google.iam.v1.SetIamPol" + + "icyRequest\032\025.google.iam.v1.Policy\"O\202\323\344\223\002" + "7\"2/v2/{resource=projects/*/instances/*}" - + ":getIamPolicy:\001*\332A\010resource\022\232\001\n\014SetIamPo" - + "licy\022\".google.iam.v1.SetIamPolicyRequest" - + "\032\025.google.iam.v1.Policy\"O\202\323\344\223\0027\"2/v2/{re" - + "source=projects/*/instances/*}:setIamPol" - + "icy:\001*\332A\017resource,policy\022\305\001\n\022TestIamPerm" - + "issions\022(.google.iam.v1.TestIamPermissio" - + "nsRequest\032).google.iam.v1.TestIamPermiss" - + "ionsResponse\"Z\202\323\344\223\002=\"8/v2/{resource=proj" - + "ects/*/instances/*}:testIamPermissions:\001" - + "*\332A\024resource,permissions\032\232\003\312A\034bigtablead" - + "min.googleapis.com\322A\367\002https://www.google" - + "apis.com/auth/bigtable.admin,https://www" - + ".googleapis.com/auth/bigtable.admin.clus" - + "ter,https://www.googleapis.com/auth/bigt" - + "able.admin.instance,https://www.googleap" - + "is.com/auth/cloud-bigtable.admin,https:/" - + "/www.googleapis.com/auth/cloud-bigtable." + + ":setIamPolicy:\001*\332A\017resource,policy\022\305\001\n\022T" + + "estIamPermissions\022(.google.iam.v1.TestIa" + + "mPermissionsRequest\032).google.iam.v1.Test" + + "IamPermissionsResponse\"Z\202\323\344\223\002=\"8/v2/{res" + + "ource=projects/*/instances/*}:testIamPer" + + "missions:\001*\332A\024resource,permissions\032\232\003\312A\034" + + "bigtableadmin.googleapis.com\322A\367\002https://" + + "www.googleapis.com/auth/bigtable.admin,h" + + "ttps://www.googleapis.com/auth/bigtable." + "admin.cluster,https://www.googleapis.com" - + "/auth/cloud-platform,https://www.googlea" - + "pis.com/auth/cloud-platform.read-onlyB\342\001" - + "\n\034com.google.bigtable.admin.v2B\032Bigtable" - + "InstanceAdminProtoP\001Z=google.golang.org/" - + "genproto/googleapis/bigtable/admin/v2;ad" - + "min\252\002\036Google.Cloud.Bigtable.Admin.V2\312\002\036G" - + "oogle\\Cloud\\Bigtable\\Admin\\V2\352\002\"Google::" - + "Cloud::Bigtable::Admin::V2b\006proto3" + + "/auth/bigtable.admin.instance,https://ww" + + "w.googleapis.com/auth/cloud-bigtable.adm" + + "in,https://www.googleapis.com/auth/cloud" + + "-bigtable.admin.cluster,https://www.goog" + + "leapis.com/auth/cloud-platform,https://w" + + "ww.googleapis.com/auth/cloud-platform.re" + + "ad-onlyB\342\001\n\034com.google.bigtable.admin.v2" + + "B\032BigtableInstanceAdminProtoP\001Z=google.g" + + "olang.org/genproto/googleapis/bigtable/a" + + "dmin/v2;admin\252\002\036Google.Cloud.Bigtable.Ad" + + "min.V2\312\002\036Google\\Cloud\\Bigtable\\Admin\\V2\352" + + "\002\"Google::Cloud::Bigtable::Admin::V2b\006pr" + + "oto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminProto.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminProto.java index 8c8bc4b006..0bfe904405 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminProto.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminProto.java @@ -172,236 +172,238 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ns.proto\032\036google/protobuf/duration.proto" + "\032\033google/protobuf/empty.proto\032 google/pr" + "otobuf/field_mask.proto\032\037google/protobuf" - + "/timestamp.proto\"\247\001\n\023RestoreTableRequest" - + "\0228\n\006parent\030\001 \001(\tB(\340A\002\372A\"\n bigtable.googl" - + "eapis.com/Instance\022\025\n\010table_id\030\002 \001(\tB\003\340A" - + "\002\0225\n\006backup\030\003 \001(\tB#\372A \n\036bigtable.googlea" - + "pis.com/BackupH\000B\010\n\006source\"\230\002\n\024RestoreTa" - + "bleMetadata\022\014\n\004name\030\001 \001(\t\022@\n\013source_type" - + "\030\002 \001(\0162+.google.bigtable.admin.v2.Restor" - + "eSourceType\022;\n\013backup_info\030\003 \001(\0132$.googl" - + "e.bigtable.admin.v2.BackupInfoH\000\022%\n\035opti" - + "mize_table_operation_name\030\004 \001(\t\022=\n\010progr" - + "ess\030\005 \001(\0132+.google.bigtable.admin.v2.Ope" - + "rationProgressB\r\n\013source_info\"l\n\035Optimiz" - + "eRestoredTableMetadata\022\014\n\004name\030\001 \001(\t\022=\n\010" - + "progress\030\002 \001(\0132+.google.bigtable.admin.v" - + "2.OperationProgress\"\374\001\n\022CreateTableReque" - + "st\0228\n\006parent\030\001 \001(\tB(\340A\002\372A\"\n bigtable.goo" - + "gleapis.com/Instance\022\025\n\010table_id\030\002 \001(\tB\003" - + "\340A\002\0223\n\005table\030\003 \001(\0132\037.google.bigtable.adm" - + "in.v2.TableB\003\340A\002\022J\n\016initial_splits\030\004 \003(\013" - + "22.google.bigtable.admin.v2.CreateTableR" - + "equest.Split\032\024\n\005Split\022\013\n\003key\030\001 \001(\014\"\264\001\n\036C" - + "reateTableFromSnapshotRequest\0228\n\006parent\030" - + "\001 \001(\tB(\340A\002\372A\"\n bigtable.googleapis.com/I" - + "nstance\022\025\n\010table_id\030\002 \001(\tB\003\340A\002\022A\n\017source" - + "_snapshot\030\003 \001(\tB(\340A\002\372A\"\n bigtable.google" - + "apis.com/Snapshot\"\224\001\n\023DropRowRangeReques" - + "t\0223\n\004name\030\001 \001(\tB%\340A\002\372A\037\n\035bigtable.google" - + "apis.com/Table\022\030\n\016row_key_prefix\030\002 \001(\014H\000" - + "\022$\n\032delete_all_data_from_table\030\003 \001(\010H\000B\010" - + "\n\006target\"\250\001\n\021ListTablesRequest\0228\n\006parent" - + "\030\001 \001(\tB(\340A\002\372A\"\n bigtable.googleapis.com/" - + "Instance\0222\n\004view\030\002 \001(\0162$.google.bigtable" - + ".admin.v2.Table.View\022\021\n\tpage_size\030\004 \001(\005\022" - + "\022\n\npage_token\030\003 \001(\t\"^\n\022ListTablesRespons" - + "e\022/\n\006tables\030\001 \003(\0132\037.google.bigtable.admi" - + "n.v2.Table\022\027\n\017next_page_token\030\002 \001(\t\"z\n\017G" - + "etTableRequest\0223\n\004name\030\001 \001(\tB%\340A\002\372A\037\n\035bi" - + "gtable.googleapis.com/Table\0222\n\004view\030\002 \001(" + + "/timestamp.proto\"\261\001\n\023RestoreTableRequest" + + "\022=\n\006parent\030\001 \001(\tB-\340A\002\372A\'\n%bigtableadmin." + + "googleapis.com/Instance\022\025\n\010table_id\030\002 \001(" + + "\tB\003\340A\002\022:\n\006backup\030\003 \001(\tB(\372A%\n#bigtableadm" + + "in.googleapis.com/BackupH\000B\010\n\006source\"\230\002\n" + + "\024RestoreTableMetadata\022\014\n\004name\030\001 \001(\t\022@\n\013s" + + "ource_type\030\002 \001(\0162+.google.bigtable.admin" + + ".v2.RestoreSourceType\022;\n\013backup_info\030\003 \001" + + "(\0132$.google.bigtable.admin.v2.BackupInfo" + + "H\000\022%\n\035optimize_table_operation_name\030\004 \001(" + + "\t\022=\n\010progress\030\005 \001(\0132+.google.bigtable.ad" + + "min.v2.OperationProgressB\r\n\013source_info\"" + + "l\n\035OptimizeRestoredTableMetadata\022\014\n\004name" + + "\030\001 \001(\t\022=\n\010progress\030\002 \001(\0132+.google.bigtab" + + "le.admin.v2.OperationProgress\"\201\002\n\022Create" + + "TableRequest\022=\n\006parent\030\001 \001(\tB-\340A\002\372A\'\n%bi" + + "gtableadmin.googleapis.com/Instance\022\025\n\010t" + + "able_id\030\002 \001(\tB\003\340A\002\0223\n\005table\030\003 \001(\0132\037.goog" + + "le.bigtable.admin.v2.TableB\003\340A\002\022J\n\016initi" + + "al_splits\030\004 \003(\01322.google.bigtable.admin." + + "v2.CreateTableRequest.Split\032\024\n\005Split\022\013\n\003" + + "key\030\001 \001(\014\"\276\001\n\036CreateTableFromSnapshotReq" + + "uest\022=\n\006parent\030\001 \001(\tB-\340A\002\372A\'\n%bigtablead" + + "min.googleapis.com/Instance\022\025\n\010table_id\030" + + "\002 \001(\tB\003\340A\002\022F\n\017source_snapshot\030\003 \001(\tB-\340A\002" + + "\372A\'\n%bigtableadmin.googleapis.com/Snapsh" + + "ot\"\231\001\n\023DropRowRangeRequest\0228\n\004name\030\001 \001(\t" + + "B*\340A\002\372A$\n\"bigtableadmin.googleapis.com/T" + + "able\022\030\n\016row_key_prefix\030\002 \001(\014H\000\022$\n\032delete" + + "_all_data_from_table\030\003 \001(\010H\000B\010\n\006target\"\255" + + "\001\n\021ListTablesRequest\022=\n\006parent\030\001 \001(\tB-\340A" + + "\002\372A\'\n%bigtableadmin.googleapis.com/Insta" + + "nce\0222\n\004view\030\002 \001(\0162$.google.bigtable.admi" + + "n.v2.Table.View\022\021\n\tpage_size\030\004 \001(\005\022\022\n\npa" + + "ge_token\030\003 \001(\t\"^\n\022ListTablesResponse\022/\n\006" + + "tables\030\001 \003(\0132\037.google.bigtable.admin.v2." + + "Table\022\027\n\017next_page_token\030\002 \001(\t\"\177\n\017GetTab" + + "leRequest\0228\n\004name\030\001 \001(\tB*\340A\002\372A$\n\"bigtabl" + + "eadmin.googleapis.com/Table\0222\n\004view\030\002 \001(" + "\0162$.google.bigtable.admin.v2.Table.View\"" - + "I\n\022DeleteTableRequest\0223\n\004name\030\001 \001(\tB%\340A\002" - + "\372A\037\n\035bigtable.googleapis.com/Table\"\332\002\n\033M" - + "odifyColumnFamiliesRequest\0223\n\004name\030\001 \001(\t" - + "B%\340A\002\372A\037\n\035bigtable.googleapis.com/Table\022" - + "^\n\rmodifications\030\002 \003(\0132B.google.bigtable" - + ".admin.v2.ModifyColumnFamiliesRequest.Mo" - + "dificationB\003\340A\002\032\245\001\n\014Modification\022\n\n\002id\030\001" - + " \001(\t\0228\n\006create\030\002 \001(\0132&.google.bigtable.a" - + "dmin.v2.ColumnFamilyH\000\0228\n\006update\030\003 \001(\0132&" - + ".google.bigtable.admin.v2.ColumnFamilyH\000" - + "\022\016\n\004drop\030\004 \001(\010H\000B\005\n\003mod\"V\n\037GenerateConsi" - + "stencyTokenRequest\0223\n\004name\030\001 \001(\tB%\340A\002\372A\037" - + "\n\035bigtable.googleapis.com/Table\"=\n Gener" - + "ateConsistencyTokenResponse\022\031\n\021consisten" - + "cy_token\030\001 \001(\t\"n\n\027CheckConsistencyReques" - + "t\0223\n\004name\030\001 \001(\tB%\340A\002\372A\037\n\035bigtable.google" - + "apis.com/Table\022\036\n\021consistency_token\030\002 \001(" - + "\tB\003\340A\002\".\n\030CheckConsistencyResponse\022\022\n\nco" - + "nsistent\030\001 \001(\010\"\334\001\n\024SnapshotTableRequest\022" - + "3\n\004name\030\001 \001(\tB%\340A\002\372A\037\n\035bigtable.googleap" - + "is.com/Table\0228\n\007cluster\030\002 \001(\tB\'\340A\002\372A!\n\037b" - + "igtable.googleapis.com/Cluster\022\030\n\013snapsh" - + "ot_id\030\003 \001(\tB\003\340A\002\022&\n\003ttl\030\004 \001(\0132\031.google.p" - + "rotobuf.Duration\022\023\n\013description\030\005 \001(\t\"L\n" - + "\022GetSnapshotRequest\0226\n\004name\030\001 \001(\tB(\340A\002\372A" - + "\"\n bigtable.googleapis.com/Snapshot\"v\n\024L" - + "istSnapshotsRequest\0227\n\006parent\030\001 \001(\tB\'\340A\002" - + "\372A!\n\037bigtable.googleapis.com/Cluster\022\021\n\t" + + "N\n\022DeleteTableRequest\0228\n\004name\030\001 \001(\tB*\340A\002" + + "\372A$\n\"bigtableadmin.googleapis.com/Table\"" + + "\337\002\n\033ModifyColumnFamiliesRequest\0228\n\004name\030" + + "\001 \001(\tB*\340A\002\372A$\n\"bigtableadmin.googleapis." + + "com/Table\022^\n\rmodifications\030\002 \003(\0132B.googl" + + "e.bigtable.admin.v2.ModifyColumnFamilies" + + "Request.ModificationB\003\340A\002\032\245\001\n\014Modificati" + + "on\022\n\n\002id\030\001 \001(\t\0228\n\006create\030\002 \001(\0132&.google." + + "bigtable.admin.v2.ColumnFamilyH\000\0228\n\006upda" + + "te\030\003 \001(\0132&.google.bigtable.admin.v2.Colu" + + "mnFamilyH\000\022\016\n\004drop\030\004 \001(\010H\000B\005\n\003mod\"[\n\037Gen" + + "erateConsistencyTokenRequest\0228\n\004name\030\001 \001" + + "(\tB*\340A\002\372A$\n\"bigtableadmin.googleapis.com" + + "/Table\"=\n GenerateConsistencyTokenRespon" + + "se\022\031\n\021consistency_token\030\001 \001(\t\"s\n\027CheckCo" + + "nsistencyRequest\0228\n\004name\030\001 \001(\tB*\340A\002\372A$\n\"" + + "bigtableadmin.googleapis.com/Table\022\036\n\021co" + + "nsistency_token\030\002 \001(\tB\003\340A\002\".\n\030CheckConsi" + + "stencyResponse\022\022\n\nconsistent\030\001 \001(\010\"\346\001\n\024S" + + "napshotTableRequest\0228\n\004name\030\001 \001(\tB*\340A\002\372A" + + "$\n\"bigtableadmin.googleapis.com/Table\022=\n" + + "\007cluster\030\002 \001(\tB,\340A\002\372A&\n$bigtableadmin.go" + + "ogleapis.com/Cluster\022\030\n\013snapshot_id\030\003 \001(" + + "\tB\003\340A\002\022&\n\003ttl\030\004 \001(\0132\031.google.protobuf.Du" + + "ration\022\023\n\013description\030\005 \001(\t\"Q\n\022GetSnapsh" + + "otRequest\022;\n\004name\030\001 \001(\tB-\340A\002\372A\'\n%bigtabl" + + "eadmin.googleapis.com/Snapshot\"{\n\024ListSn" + + "apshotsRequest\022<\n\006parent\030\001 \001(\tB,\340A\002\372A&\n$" + + "bigtableadmin.googleapis.com/Cluster\022\021\n\t" + "page_size\030\002 \001(\005\022\022\n\npage_token\030\003 \001(\t\"g\n\025L" + "istSnapshotsResponse\0225\n\tsnapshots\030\001 \003(\0132" + "\".google.bigtable.admin.v2.Snapshot\022\027\n\017n" - + "ext_page_token\030\002 \001(\t\"O\n\025DeleteSnapshotRe" - + "quest\0226\n\004name\030\001 \001(\tB(\340A\002\372A\"\n bigtable.go" - + "ogleapis.com/Snapshot\"\304\001\n\025SnapshotTableM" - + "etadata\022H\n\020original_request\030\001 \001(\0132..goog" - + "le.bigtable.admin.v2.SnapshotTableReques" - + "t\0220\n\014request_time\030\002 \001(\0132\032.google.protobu" - + "f.Timestamp\022/\n\013finish_time\030\003 \001(\0132\032.googl" - + "e.protobuf.Timestamp\"\330\001\n\037CreateTableFrom" - + "SnapshotMetadata\022R\n\020original_request\030\001 \001" - + "(\01328.google.bigtable.admin.v2.CreateTabl" - + "eFromSnapshotRequest\0220\n\014request_time\030\002 \001" - + "(\0132\032.google.protobuf.Timestamp\022/\n\013finish" - + "_time\030\003 \001(\0132\032.google.protobuf.Timestamp\"" - + "\235\001\n\023CreateBackupRequest\0227\n\006parent\030\001 \001(\tB" - + "\'\340A\002\372A!\n\037bigtable.googleapis.com/Cluster" - + "\022\026\n\tbackup_id\030\002 \001(\tB\003\340A\002\0225\n\006backup\030\003 \001(\013" - + "2 .google.bigtable.admin.v2.BackupB\003\340A\002\"" - + "\230\001\n\024CreateBackupMetadata\022\014\n\004name\030\001 \001(\t\022\024" - + "\n\014source_table\030\002 \001(\t\022.\n\nstart_time\030\003 \001(\013" - + "2\032.google.protobuf.Timestamp\022,\n\010end_time" - + "\030\004 \001(\0132\032.google.protobuf.Timestamp\"\202\001\n\023U" - + "pdateBackupRequest\0225\n\006backup\030\001 \001(\0132 .goo" - + "gle.bigtable.admin.v2.BackupB\003\340A\002\0224\n\013upd" - + "ate_mask\030\002 \001(\0132\032.google.protobuf.FieldMa" - + "skB\003\340A\002\"H\n\020GetBackupRequest\0224\n\004name\030\001 \001(" - + "\tB&\340A\002\372A \n\036bigtable.googleapis.com/Backu" - + "p\"K\n\023DeleteBackupRequest\0224\n\004name\030\001 \001(\tB&" - + "\340A\002\372A \n\036bigtable.googleapis.com/Backup\"\226" - + "\001\n\022ListBackupsRequest\0227\n\006parent\030\001 \001(\tB\'\340" - + "A\002\372A!\n\037bigtable.googleapis.com/Cluster\022\016" - + "\n\006filter\030\002 \001(\t\022\020\n\010order_by\030\003 \001(\t\022\021\n\tpage" - + "_size\030\004 \001(\005\022\022\n\npage_token\030\005 \001(\t\"a\n\023ListB" - + "ackupsResponse\0221\n\007backups\030\001 \003(\0132 .google" - + ".bigtable.admin.v2.Backup\022\027\n\017next_page_t" - + "oken\030\002 \001(\t2\230%\n\022BigtableTableAdmin\022\253\001\n\013Cr" - + "eateTable\022,.google.bigtable.admin.v2.Cre" - + "ateTableRequest\032\037.google.bigtable.admin." - + "v2.Table\"M\202\323\344\223\002/\"*/v2/{parent=projects/*" - + "/instances/*}/tables:\001*\332A\025parent,table_i" - + "d,table\022\212\002\n\027CreateTableFromSnapshot\0228.go" - + "ogle.bigtable.admin.v2.CreateTableFromSn" - + "apshotRequest\032\035.google.longrunning.Opera" - + "tion\"\225\001\202\323\344\223\002B\"=/v2/{parent=projects/*/in" - + "stances/*}/tables:createFromSnapshot:\001*\332" - + "A\037parent,table_id,source_snapshot\312A(\n\005Ta" - + "ble\022\037CreateTableFromSnapshotMetadata\022\244\001\n" - + "\nListTables\022+.google.bigtable.admin.v2.L" - + "istTablesRequest\032,.google.bigtable.admin" - + ".v2.ListTablesResponse\";\202\323\344\223\002,\022*/v2/{par" - + "ent=projects/*/instances/*}/tables\332A\006par" - + "ent\022\221\001\n\010GetTable\022).google.bigtable.admin" - + ".v2.GetTableRequest\032\037.google.bigtable.ad" - + "min.v2.Table\"9\202\323\344\223\002,\022*/v2/{name=projects" - + "/*/instances/*/tables/*}\332A\004name\022\216\001\n\013Dele" - + "teTable\022,.google.bigtable.admin.v2.Delet" - + "eTableRequest\032\026.google.protobuf.Empty\"9\202" - + "\323\344\223\002,**/v2/{name=projects/*/instances/*/" - + "tables/*}\332A\004name\022\317\001\n\024ModifyColumnFamilie" - + "s\0225.google.bigtable.admin.v2.ModifyColum" - + "nFamiliesRequest\032\037.google.bigtable.admin" - + ".v2.Table\"_\202\323\344\223\002D\"?/v2/{name=projects/*/" - + "instances/*/tables/*}:modifyColumnFamili" - + "es:\001*\332A\022name,modifications\022\231\001\n\014DropRowRa" - + "nge\022-.google.bigtable.admin.v2.DropRowRa" - + "ngeRequest\032\026.google.protobuf.Empty\"B\202\323\344\223" - + "\002<\"7/v2/{name=projects/*/instances/*/tab" - + "les/*}:dropRowRange:\001*\022\350\001\n\030GenerateConsi" - + "stencyToken\0229.google.bigtable.admin.v2.G" - + "enerateConsistencyTokenRequest\032:.google." - + "bigtable.admin.v2.GenerateConsistencyTok" - + "enResponse\"U\202\323\344\223\002H\"C/v2/{name=projects/*" - + "/instances/*/tables/*}:generateConsisten" - + "cyToken:\001*\332A\004name\022\332\001\n\020CheckConsistency\0221" - + ".google.bigtable.admin.v2.CheckConsisten" - + "cyRequest\0322.google.bigtable.admin.v2.Che" - + "ckConsistencyResponse\"_\202\323\344\223\002@\";/v2/{name" - + "=projects/*/instances/*/tables/*}:checkC" - + "onsistency:\001*\332A\026name,consistency_token\022\352" - + "\001\n\rSnapshotTable\022..google.bigtable.admin" - + ".v2.SnapshotTableRequest\032\035.google.longru" - + "nning.Operation\"\211\001\202\323\344\223\0028\"3/v2/{name=proj" - + "ects/*/instances/*/tables/*}:snapshot:\001*" - + "\332A$name,cluster,snapshot_id,description\312" - + "A!\n\010Snapshot\022\025SnapshotTableMetadata\022\250\001\n\013" - + "GetSnapshot\022,.google.bigtable.admin.v2.G" - + "etSnapshotRequest\032\".google.bigtable.admi" - + "n.v2.Snapshot\"G\202\323\344\223\002:\0228/v2/{name=project" - + "s/*/instances/*/clusters/*/snapshots/*}\332" - + "A\004name\022\273\001\n\rListSnapshots\022..google.bigtab" - + "le.admin.v2.ListSnapshotsRequest\032/.googl" - + "e.bigtable.admin.v2.ListSnapshotsRespons" - + "e\"I\202\323\344\223\002:\0228/v2/{parent=projects/*/instan" - + "ces/*/clusters/*}/snapshots\332A\006parent\022\242\001\n" - + "\016DeleteSnapshot\022/.google.bigtable.admin." - + "v2.DeleteSnapshotRequest\032\026.google.protob" - + "uf.Empty\"G\202\323\344\223\002:*8/v2/{name=projects/*/i" - + "nstances/*/clusters/*/snapshots/*}\332A\004nam" - + "e\022\340\001\n\014CreateBackup\022-.google.bigtable.adm" - + "in.v2.CreateBackupRequest\032\035.google.longr" - + "unning.Operation\"\201\001\202\323\344\223\002@\"6/v2/{parent=p" - + "rojects/*/instances/*/clusters/*}/backup" - + "s:\006backup\332A\027parent,backup_id,backup\312A\036\n\006" - + "Backup\022\024CreateBackupMetadata\022\240\001\n\tGetBack" - + "up\022*.google.bigtable.admin.v2.GetBackupR" - + "equest\032 .google.bigtable.admin.v2.Backup" - + "\"E\202\323\344\223\0028\0226/v2/{name=projects/*/instances" - + "/*/clusters/*/backups/*}\332A\004name\022\303\001\n\014Upda" - + "teBackup\022-.google.bigtable.admin.v2.Upda" - + "teBackupRequest\032 .google.bigtable.admin." - + "v2.Backup\"b\202\323\344\223\002G2=/v2/{backup.name=proj" + + "ext_page_token\030\002 \001(\t\"T\n\025DeleteSnapshotRe" + + "quest\022;\n\004name\030\001 \001(\tB-\340A\002\372A\'\n%bigtableadm" + + "in.googleapis.com/Snapshot\"\304\001\n\025SnapshotT" + + "ableMetadata\022H\n\020original_request\030\001 \001(\0132." + + ".google.bigtable.admin.v2.SnapshotTableR" + + "equest\0220\n\014request_time\030\002 \001(\0132\032.google.pr" + + "otobuf.Timestamp\022/\n\013finish_time\030\003 \001(\0132\032." + + "google.protobuf.Timestamp\"\330\001\n\037CreateTabl" + + "eFromSnapshotMetadata\022R\n\020original_reques" + + "t\030\001 \001(\01328.google.bigtable.admin.v2.Creat" + + "eTableFromSnapshotRequest\0220\n\014request_tim" + + "e\030\002 \001(\0132\032.google.protobuf.Timestamp\022/\n\013f" + + "inish_time\030\003 \001(\0132\032.google.protobuf.Times" + + "tamp\"\242\001\n\023CreateBackupRequest\022<\n\006parent\030\001" + + " \001(\tB,\340A\002\372A&\n$bigtableadmin.googleapis.c" + + "om/Cluster\022\026\n\tbackup_id\030\002 \001(\tB\003\340A\002\0225\n\006ba" + + "ckup\030\003 \001(\0132 .google.bigtable.admin.v2.Ba" + + "ckupB\003\340A\002\"\230\001\n\024CreateBackupMetadata\022\014\n\004na" + + "me\030\001 \001(\t\022\024\n\014source_table\030\002 \001(\t\022.\n\nstart_" + + "time\030\003 \001(\0132\032.google.protobuf.Timestamp\022," + + "\n\010end_time\030\004 \001(\0132\032.google.protobuf.Times" + + "tamp\"\202\001\n\023UpdateBackupRequest\0225\n\006backup\030\001" + + " \001(\0132 .google.bigtable.admin.v2.BackupB\003" + + "\340A\002\0224\n\013update_mask\030\002 \001(\0132\032.google.protob" + + "uf.FieldMaskB\003\340A\002\"M\n\020GetBackupRequest\0229\n" + + "\004name\030\001 \001(\tB+\340A\002\372A%\n#bigtableadmin.googl" + + "eapis.com/Backup\"P\n\023DeleteBackupRequest\022" + + "9\n\004name\030\001 \001(\tB+\340A\002\372A%\n#bigtableadmin.goo" + + "gleapis.com/Backup\"\233\001\n\022ListBackupsReques" + + "t\022<\n\006parent\030\001 \001(\tB,\340A\002\372A&\n$bigtableadmin" + + ".googleapis.com/Cluster\022\016\n\006filter\030\002 \001(\t\022" + + "\020\n\010order_by\030\003 \001(\t\022\021\n\tpage_size\030\004 \001(\005\022\022\n\n" + + "page_token\030\005 \001(\t\"a\n\023ListBackupsResponse\022" + + "1\n\007backups\030\001 \003(\0132 .google.bigtable.admin" + + ".v2.Backup\022\027\n\017next_page_token\030\002 \001(\t2\230%\n\022" + + "BigtableTableAdmin\022\253\001\n\013CreateTable\022,.goo" + + "gle.bigtable.admin.v2.CreateTableRequest" + + "\032\037.google.bigtable.admin.v2.Table\"M\202\323\344\223\002" + + "/\"*/v2/{parent=projects/*/instances/*}/t" + + "ables:\001*\332A\025parent,table_id,table\022\212\002\n\027Cre" + + "ateTableFromSnapshot\0228.google.bigtable.a" + + "dmin.v2.CreateTableFromSnapshotRequest\032\035" + + ".google.longrunning.Operation\"\225\001\202\323\344\223\002B\"=" + + "/v2/{parent=projects/*/instances/*}/tabl" + + "es:createFromSnapshot:\001*\332A\037parent,table_" + + "id,source_snapshot\312A(\n\005Table\022\037CreateTabl" + + "eFromSnapshotMetadata\022\244\001\n\nListTables\022+.g" + + "oogle.bigtable.admin.v2.ListTablesReques" + + "t\032,.google.bigtable.admin.v2.ListTablesR" + + "esponse\";\202\323\344\223\002,\022*/v2/{parent=projects/*/" + + "instances/*}/tables\332A\006parent\022\221\001\n\010GetTabl" + + "e\022).google.bigtable.admin.v2.GetTableReq" + + "uest\032\037.google.bigtable.admin.v2.Table\"9\202" + + "\323\344\223\002,\022*/v2/{name=projects/*/instances/*/" + + "tables/*}\332A\004name\022\216\001\n\013DeleteTable\022,.googl" + + "e.bigtable.admin.v2.DeleteTableRequest\032\026" + + ".google.protobuf.Empty\"9\202\323\344\223\002,**/v2/{nam" + + "e=projects/*/instances/*/tables/*}\332A\004nam" + + "e\022\317\001\n\024ModifyColumnFamilies\0225.google.bigt" + + "able.admin.v2.ModifyColumnFamiliesReques" + + "t\032\037.google.bigtable.admin.v2.Table\"_\202\323\344\223" + + "\002D\"?/v2/{name=projects/*/instances/*/tab" + + "les/*}:modifyColumnFamilies:\001*\332A\022name,mo" + + "difications\022\231\001\n\014DropRowRange\022-.google.bi" + + "gtable.admin.v2.DropRowRangeRequest\032\026.go" + + "ogle.protobuf.Empty\"B\202\323\344\223\002<\"7/v2/{name=p" + + "rojects/*/instances/*/tables/*}:dropRowR" + + "ange:\001*\022\350\001\n\030GenerateConsistencyToken\0229.g" + + "oogle.bigtable.admin.v2.GenerateConsiste" + + "ncyTokenRequest\032:.google.bigtable.admin." + + "v2.GenerateConsistencyTokenResponse\"U\202\323\344" + + "\223\002H\"C/v2/{name=projects/*/instances/*/ta" + + "bles/*}:generateConsistencyToken:\001*\332A\004na" + + "me\022\332\001\n\020CheckConsistency\0221.google.bigtabl" + + "e.admin.v2.CheckConsistencyRequest\0322.goo" + + "gle.bigtable.admin.v2.CheckConsistencyRe" + + "sponse\"_\202\323\344\223\002@\";/v2/{name=projects/*/ins" + + "tances/*/tables/*}:checkConsistency:\001*\332A" + + "\026name,consistency_token\022\352\001\n\rSnapshotTabl" + + "e\022..google.bigtable.admin.v2.SnapshotTab" + + "leRequest\032\035.google.longrunning.Operation" + + "\"\211\001\202\323\344\223\0028\"3/v2/{name=projects/*/instance" + + "s/*/tables/*}:snapshot:\001*\332A$name,cluster" + + ",snapshot_id,description\312A!\n\010Snapshot\022\025S" + + "napshotTableMetadata\022\250\001\n\013GetSnapshot\022,.g" + + "oogle.bigtable.admin.v2.GetSnapshotReque" + + "st\032\".google.bigtable.admin.v2.Snapshot\"G" + + "\202\323\344\223\002:\0228/v2/{name=projects/*/instances/*" + + "/clusters/*/snapshots/*}\332A\004name\022\273\001\n\rList" + + "Snapshots\022..google.bigtable.admin.v2.Lis" + + "tSnapshotsRequest\032/.google.bigtable.admi" + + "n.v2.ListSnapshotsResponse\"I\202\323\344\223\002:\0228/v2/" + + "{parent=projects/*/instances/*/clusters/" + + "*}/snapshots\332A\006parent\022\242\001\n\016DeleteSnapshot" + + "\022/.google.bigtable.admin.v2.DeleteSnapsh" + + "otRequest\032\026.google.protobuf.Empty\"G\202\323\344\223\002" + + ":*8/v2/{name=projects/*/instances/*/clus" + + "ters/*/snapshots/*}\332A\004name\022\340\001\n\014CreateBac" + + "kup\022-.google.bigtable.admin.v2.CreateBac" + + "kupRequest\032\035.google.longrunning.Operatio" + + "n\"\201\001\202\323\344\223\002@\"6/v2/{parent=projects/*/insta" + + "nces/*/clusters/*}/backups:\006backup\332A\027par" + + "ent,backup_id,backup\312A\036\n\006Backup\022\024CreateB" + + "ackupMetadata\022\240\001\n\tGetBackup\022*.google.big" + + "table.admin.v2.GetBackupRequest\032 .google" + + ".bigtable.admin.v2.Backup\"E\202\323\344\223\0028\0226/v2/{" + + "name=projects/*/instances/*/clusters/*/b" + + "ackups/*}\332A\004name\022\303\001\n\014UpdateBackup\022-.goog" + + "le.bigtable.admin.v2.UpdateBackupRequest" + + "\032 .google.bigtable.admin.v2.Backup\"b\202\323\344\223" + + "\002G2=/v2/{backup.name=projects/*/instance" + + "s/*/clusters/*/backups/*}:\006backup\332A\022back" + + "up,update_mask\022\234\001\n\014DeleteBackup\022-.google" + + ".bigtable.admin.v2.DeleteBackupRequest\032\026" + + ".google.protobuf.Empty\"E\202\323\344\223\0028*6/v2/{nam" + + "e=projects/*/instances/*/clusters/*/back" + + "ups/*}\332A\004name\022\263\001\n\013ListBackups\022,.google.b" + + "igtable.admin.v2.ListBackupsRequest\032-.go" + + "ogle.bigtable.admin.v2.ListBackupsRespon" + + "se\"G\202\323\344\223\0028\0226/v2/{parent=projects/*/insta" + + "nces/*/clusters/*}/backups\332A\006parent\022\273\001\n\014" + + "RestoreTable\022-.google.bigtable.admin.v2." + + "RestoreTableRequest\032\035.google.longrunning" + + ".Operation\"]\202\323\344\223\0027\"2/v2/{parent=projects" + + "/*/instances/*}/tables:restore:\001*\312A\035\n\005Ta" + + "ble\022\024RestoreTableMetadata\022\354\001\n\014GetIamPoli" + + "cy\022\".google.iam.v1.GetIamPolicyRequest\032\025" + + ".google.iam.v1.Policy\"\240\001\202\323\344\223\002\216\001\";/v2/{re" + + "source=projects/*/instances/*/tables/*}:" + + "getIamPolicy:\001*ZL\"G/v2/{resource=project" + + "s/*/instances/*/clusters/*/backups/*}:ge" + + "tIamPolicy:\001*\332A\010resource\022\363\001\n\014SetIamPolic" + + "y\022\".google.iam.v1.SetIamPolicyRequest\032\025." + + "google.iam.v1.Policy\"\247\001\202\323\344\223\002\216\001\";/v2/{res" + + "ource=projects/*/instances/*/tables/*}:s" + + "etIamPolicy:\001*ZL\"G/v2/{resource=projects" + + "/*/instances/*/clusters/*/backups/*}:set" + + "IamPolicy:\001*\332A\017resource,policy\022\244\002\n\022TestI" + + "amPermissions\022(.google.iam.v1.TestIamPer" + + "missionsRequest\032).google.iam.v1.TestIamP" + + "ermissionsResponse\"\270\001\202\323\344\223\002\232\001\"A/v2/{resou" + + "rce=projects/*/instances/*/tables/*}:tes" + + "tIamPermissions:\001*ZR\"M/v2/{resource=proj" + "ects/*/instances/*/clusters/*/backups/*}" - + ":\006backup\332A\022backup,update_mask\022\234\001\n\014Delete" - + "Backup\022-.google.bigtable.admin.v2.Delete" - + "BackupRequest\032\026.google.protobuf.Empty\"E\202" - + "\323\344\223\0028*6/v2/{name=projects/*/instances/*/" - + "clusters/*/backups/*}\332A\004name\022\263\001\n\013ListBac" - + "kups\022,.google.bigtable.admin.v2.ListBack" - + "upsRequest\032-.google.bigtable.admin.v2.Li" - + "stBackupsResponse\"G\202\323\344\223\0028\0226/v2/{parent=p" - + "rojects/*/instances/*/clusters/*}/backup" - + "s\332A\006parent\022\273\001\n\014RestoreTable\022-.google.big" - + "table.admin.v2.RestoreTableRequest\032\035.goo" - + "gle.longrunning.Operation\"]\202\323\344\223\0027\"2/v2/{" - + "parent=projects/*/instances/*}/tables:re" - + "store:\001*\312A\035\n\005Table\022\024RestoreTableMetadata" - + "\022\354\001\n\014GetIamPolicy\022\".google.iam.v1.GetIam" - + "PolicyRequest\032\025.google.iam.v1.Policy\"\240\001\202" - + "\323\344\223\002\216\001\";/v2/{resource=projects/*/instanc" - + "es/*/tables/*}:getIamPolicy:\001*ZL\"G/v2/{r" - + "esource=projects/*/instances/*/clusters/" - + "*/backups/*}:getIamPolicy:\001*\332A\010resource\022" - + "\363\001\n\014SetIamPolicy\022\".google.iam.v1.SetIamP" - + "olicyRequest\032\025.google.iam.v1.Policy\"\247\001\202\323" - + "\344\223\002\216\001\";/v2/{resource=projects/*/instance" - + "s/*/tables/*}:setIamPolicy:\001*ZL\"G/v2/{re" - + "source=projects/*/instances/*/clusters/*" - + "/backups/*}:setIamPolicy:\001*\332A\017resource,p" - + "olicy\022\244\002\n\022TestIamPermissions\022(.google.ia" - + "m.v1.TestIamPermissionsRequest\032).google." - + "iam.v1.TestIamPermissionsResponse\"\270\001\202\323\344\223" - + "\002\232\001\"A/v2/{resource=projects/*/instances/" - + "*/tables/*}:testIamPermissions:\001*ZR\"M/v2" - + "/{resource=projects/*/instances/*/cluste" - + "rs/*/backups/*}:testIamPermissions:\001*\332A\024" - + "resource,permissions\032\336\002\312A\034bigtableadmin." - + "googleapis.com\322A\273\002https://www.googleapis" - + ".com/auth/bigtable.admin,https://www.goo" - + "gleapis.com/auth/bigtable.admin.table,ht" - + "tps://www.googleapis.com/auth/cloud-bigt" - + "able.admin,https://www.googleapis.com/au" - + "th/cloud-bigtable.admin.table,https://ww" - + "w.googleapis.com/auth/cloud-platform,htt" - + "ps://www.googleapis.com/auth/cloud-platf" - + "orm.read-onlyB\337\001\n\034com.google.bigtable.ad" - + "min.v2B\027BigtableTableAdminProtoP\001Z=googl" - + "e.golang.org/genproto/googleapis/bigtabl" - + "e/admin/v2;admin\252\002\036Google.Cloud.Bigtable" - + ".Admin.V2\312\002\036Google\\Cloud\\Bigtable\\Admin\\" - + "V2\352\002\"Google::Cloud::Bigtable::Admin::V2b" - + "\006proto3" + + ":testIamPermissions:\001*\332A\024resource,permis" + + "sions\032\336\002\312A\034bigtableadmin.googleapis.com\322" + + "A\273\002https://www.googleapis.com/auth/bigta" + + "ble.admin,https://www.googleapis.com/aut" + + "h/bigtable.admin.table,https://www.googl" + + "eapis.com/auth/cloud-bigtable.admin,http" + + "s://www.googleapis.com/auth/cloud-bigtab" + + "le.admin.table,https://www.googleapis.co" + + "m/auth/cloud-platform,https://www.google" + + "apis.com/auth/cloud-platform.read-onlyB\337" + + "\001\n\034com.google.bigtable.admin.v2B\027Bigtabl" + + "eTableAdminProtoP\001Z=google.golang.org/ge" + + "nproto/googleapis/bigtable/admin/v2;admi" + + "n\252\002\036Google.Cloud.Bigtable.Admin.V2\312\002\036Goo" + + "gle\\Cloud\\Bigtable\\Admin\\V2\352\002\"Google::Cl" + + "oud::Bigtable::Admin::V2b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequest.java index a470430641..7728cd9427 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequest.java @@ -240,10 +240,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getConsistencyTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(consistencyToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, consistencyToken_); } unknownFields.writeTo(output); @@ -255,10 +255,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getConsistencyTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(consistencyToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, consistencyToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Cluster.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Cluster.java index 906d9b80d2..a2e5f21f63 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Cluster.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Cluster.java @@ -589,7 +589,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getKmsKeyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kmsKeyName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, kmsKeyName_); } unknownFields.writeTo(output); @@ -601,7 +601,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getKmsKeyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kmsKeyName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, kmsKeyName_); } size += unknownFields.getSerializedSize(); @@ -1368,10 +1368,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getLocationBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(location_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, location_); } if (state_ != com.google.bigtable.admin.v2.Cluster.State.STATE_NOT_KNOWN.getNumber()) { @@ -1396,10 +1396,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getLocationBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(location_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, location_); } if (state_ != com.google.bigtable.admin.v2.Cluster.State.STATE_NOT_KNOWN.getNumber()) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequest.java index 298de40aa0..a4fad3fe82 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequest.java @@ -339,10 +339,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, appProfileId_); } if (appProfile_ != null) { @@ -360,10 +360,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, appProfileId_); } if (appProfile_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadata.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadata.java index 5270f2e383..3bbebb9b36 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadata.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadata.java @@ -354,10 +354,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getSourceTableBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTable_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, sourceTable_); } if (startTime_ != null) { @@ -375,10 +375,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getSourceTableBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTable_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, sourceTable_); } if (startTime_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequest.java index 708a5ba1ba..041b5c2921 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequest.java @@ -314,10 +314,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getBackupIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backupId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, backupId_); } if (backup_ != null) { @@ -332,10 +332,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getBackupIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backupId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, backupId_); } if (backup_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequest.java index 7576c4739e..016c5ef19e 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequest.java @@ -311,10 +311,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getClusterIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clusterId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, clusterId_); } if (cluster_ != null) { @@ -329,10 +329,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getClusterIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clusterId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, clusterId_); } if (cluster_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequest.java index d7c9cf806f..0d73599b13 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequest.java @@ -472,10 +472,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getInstanceIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(instanceId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, instanceId_); } if (instance_ != null) { @@ -492,10 +492,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getInstanceIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(instanceId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, instanceId_); } if (instance_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequest.java index 0db14a052a..24571aa7f0 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequest.java @@ -312,13 +312,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, tableId_); } - if (!getSourceSnapshotBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceSnapshot_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, sourceSnapshot_); } unknownFields.writeTo(output); @@ -330,13 +330,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, tableId_); } - if (!getSourceSnapshotBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceSnapshot_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, sourceSnapshot_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequest.java index 644b5c35b1..4b967ec84e 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequest.java @@ -1017,10 +1017,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, tableId_); } if (table_ != null) { @@ -1038,10 +1038,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, tableId_); } if (table_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequest.java index d4b0e4e310..b53170a69e 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequest.java @@ -203,7 +203,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (ignoreWarnings_ != false) { @@ -218,7 +218,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (ignoreWarnings_ != false) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequest.java index bf0a30d5cc..11f4d46bcc 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequest.java @@ -182,7 +182,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -194,7 +194,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequest.java index 3d21d301f9..effff5f63b 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequest.java @@ -180,7 +180,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -192,7 +192,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequest.java index 1d6b1cf152..1130c9b4b3 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequest.java @@ -180,7 +180,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -192,7 +192,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequest.java index 73c6f25cb1..c9a34bcc6a 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequest.java @@ -187,7 +187,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -199,7 +199,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequest.java index fc9df7b550..545a2d314c 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequest.java @@ -183,7 +183,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -195,7 +195,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequest.java index 1dd43e9898..3eeb789928 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequest.java @@ -314,7 +314,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (targetCase_ == 2) { @@ -332,7 +332,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (targetCase_ == 2) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/EncryptionInfo.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/EncryptionInfo.java index 5118ecbe43..3b396ec533 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/EncryptionInfo.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/EncryptionInfo.java @@ -478,7 +478,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getKmsKeyVersionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kmsKeyVersion_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, kmsKeyVersion_); } if (encryptionType_ @@ -498,7 +498,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getKmsKeyVersionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kmsKeyVersion_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, kmsKeyVersion_); } if (encryptionType_ diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequest.java index db2547bf0c..71ac0bd158 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequest.java @@ -184,7 +184,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -196,7 +196,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponse.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponse.java index 804017aebd..e18a65c5f8 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponse.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponse.java @@ -176,7 +176,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getConsistencyTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(consistencyToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, consistencyToken_); } unknownFields.writeTo(output); @@ -188,7 +188,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getConsistencyTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(consistencyToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, consistencyToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequest.java index 4feffaa5a3..cadb812b2f 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequest.java @@ -180,7 +180,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -192,7 +192,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequest.java index 39bf377a22..336ff44107 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequest.java @@ -182,7 +182,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -194,7 +194,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequest.java index cd0957c172..1d47f49619 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequest.java @@ -180,7 +180,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -192,7 +192,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequest.java index 50a61e1224..b087686ec6 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequest.java @@ -180,7 +180,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -192,7 +192,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequest.java index 67d7f02111..becfdcb4c9 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequest.java @@ -187,7 +187,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -199,7 +199,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequest.java index a6fd6d9422..330519453e 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequest.java @@ -229,7 +229,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (view_ != com.google.bigtable.admin.v2.Table.View.VIEW_UNSPECIFIED.getNumber()) { @@ -244,7 +244,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (view_ != com.google.bigtable.admin.v2.Table.View.VIEW_UNSPECIFIED.getNumber()) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Instance.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Instance.java index 7eb3180d7c..dec50fb9b7 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Instance.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Instance.java @@ -116,6 +116,21 @@ private Instance( input.readMessage( LabelsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); labels_.getMutableMap().put(labels__.getKey(), labels__.getValue()); + break; + } + case 58: + { + com.google.protobuf.Timestamp.Builder subBuilder = null; + if (createTime_ != null) { + subBuilder = createTime_.toBuilder(); + } + createTime_ = + input.readMessage(com.google.protobuf.Timestamp.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(createTime_); + createTime_ = subBuilder.buildPartial(); + } + break; } default: @@ -811,6 +826,61 @@ public java.lang.String getLabelsOrThrow(java.lang.String key) { return map.get(key); } + public static final int CREATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp createTime_; + /** + * + * + *
+   * Output only. A server-assigned timestamp representing when this Instance was created.
+   * For instances created before this field was added (August 2021), this value
+   * is `seconds: 0, nanos: 1`.
+   * 
+ * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + @java.lang.Override + public boolean hasCreateTime() { + return createTime_ != null; + } + /** + * + * + *
+   * Output only. A server-assigned timestamp representing when this Instance was created.
+   * For instances created before this field was added (August 2021), this value
+   * is `seconds: 0, nanos: 1`.
+   * 
+ * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getCreateTime() { + return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_; + } + /** + * + * + *
+   * Output only. A server-assigned timestamp representing when this Instance was created.
+   * For instances created before this field was added (August 2021), this value
+   * is `seconds: 0, nanos: 1`.
+   * 
+ * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + return getCreateTime(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -825,10 +895,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getDisplayNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, displayName_); } if (state_ != com.google.bigtable.admin.v2.Instance.State.STATE_NOT_KNOWN.getNumber()) { @@ -839,6 +909,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io } com.google.protobuf.GeneratedMessageV3.serializeStringMapTo( output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 5); + if (createTime_ != null) { + output.writeMessage(7, getCreateTime()); + } unknownFields.writeTo(output); } @@ -848,10 +921,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getDisplayNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, displayName_); } if (state_ != com.google.bigtable.admin.v2.Instance.State.STATE_NOT_KNOWN.getNumber()) { @@ -870,6 +943,9 @@ public int getSerializedSize() { .build(); size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, labels__); } + if (createTime_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getCreateTime()); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -890,6 +966,10 @@ public boolean equals(final java.lang.Object obj) { if (state_ != other.state_) return false; if (type_ != other.type_) return false; if (!internalGetLabels().equals(other.internalGetLabels())) return false; + if (hasCreateTime() != other.hasCreateTime()) return false; + if (hasCreateTime()) { + if (!getCreateTime().equals(other.getCreateTime())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -913,6 +993,10 @@ public int hashCode() { hash = (37 * hash) + LABELS_FIELD_NUMBER; hash = (53 * hash) + internalGetLabels().hashCode(); } + if (hasCreateTime()) { + hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getCreateTime().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -1089,6 +1173,12 @@ public Builder clear() { type_ = 0; internalGetMutableLabels().clear(); + if (createTimeBuilder_ == null) { + createTime_ = null; + } else { + createTime_ = null; + createTimeBuilder_ = null; + } return this; } @@ -1123,6 +1213,11 @@ public com.google.bigtable.admin.v2.Instance buildPartial() { result.type_ = type_; result.labels_ = internalGetLabels(); result.labels_.makeImmutable(); + if (createTimeBuilder_ == null) { + result.createTime_ = createTime_; + } else { + result.createTime_ = createTimeBuilder_.build(); + } onBuilt(); return result; } @@ -1187,6 +1282,9 @@ public Builder mergeFrom(com.google.bigtable.admin.v2.Instance other) { setTypeValue(other.getTypeValue()); } internalGetMutableLabels().mergeFrom(other.internalGetLabels()); + if (other.hasCreateTime()) { + mergeCreateTime(other.getCreateTime()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -1852,6 +1950,225 @@ public Builder putAllLabels(java.util.Map va return this; } + private com.google.protobuf.Timestamp createTime_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + createTimeBuilder_; + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + public boolean hasCreateTime() { + return createTimeBuilder_ != null || createTime_ != null; + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + public com.google.protobuf.Timestamp getCreateTime() { + if (createTimeBuilder_ == null) { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } else { + return createTimeBuilder_.getMessage(); + } + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createTime_ = value; + onChanged(); + } else { + createTimeBuilder_.setMessage(value); + } + + return this; + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (createTimeBuilder_ == null) { + createTime_ = builderForValue.build(); + onChanged(); + } else { + createTimeBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { + if (createTimeBuilder_ == null) { + if (createTime_ != null) { + createTime_ = + com.google.protobuf.Timestamp.newBuilder(createTime_).mergeFrom(value).buildPartial(); + } else { + createTime_ = value; + } + onChanged(); + } else { + createTimeBuilder_.mergeFrom(value); + } + + return this; + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearCreateTime() { + if (createTimeBuilder_ == null) { + createTime_ = null; + onChanged(); + } else { + createTime_ = null; + createTimeBuilder_ = null; + } + + return this; + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { + + onChanged(); + return getCreateTimeFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { + if (createTimeBuilder_ != null) { + return createTimeBuilder_.getMessageOrBuilder(); + } else { + return createTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : createTime_; + } + } + /** + * + * + *
+     * Output only. A server-assigned timestamp representing when this Instance was created.
+     * For instances created before this field was added (August 2021), this value
+     * is `seconds: 0, nanos: 1`.
+     * 
+ * + * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + getCreateTimeFieldBuilder() { + if (createTimeBuilder_ == null) { + createTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getCreateTime(), getParentForChildren(), isClean()); + createTime_ = null; + } + return createTimeBuilder_; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceOrBuilder.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceOrBuilder.java index fd555df3fa..6de580202b 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceOrBuilder.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceOrBuilder.java @@ -229,4 +229,48 @@ public interface InstanceOrBuilder * map<string, string> labels = 5; */ java.lang.String getLabelsOrThrow(java.lang.String key); + + /** + * + * + *
+   * Output only. A server-assigned timestamp representing when this Instance was created.
+   * For instances created before this field was added (August 2021), this value
+   * is `seconds: 0, nanos: 1`.
+   * 
+ * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the createTime field is set. + */ + boolean hasCreateTime(); + /** + * + * + *
+   * Output only. A server-assigned timestamp representing when this Instance was created.
+   * For instances created before this field was added (August 2021), this value
+   * is `seconds: 0, nanos: 1`.
+   * 
+ * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The createTime. + */ + com.google.protobuf.Timestamp getCreateTime(); + /** + * + * + *
+   * Output only. A server-assigned timestamp representing when this Instance was created.
+   * For instances created before this field was added (August 2021), this value
+   * is `seconds: 0, nanos: 1`.
+   * 
+ * + * .google.protobuf.Timestamp create_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder(); } diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceProto.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceProto.java index 85f87a8ec8..2495621269 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceProto.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceProto.java @@ -68,55 +68,58 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "o\022\030google.bigtable.admin.v2\032\037google/api/" + "field_behavior.proto\032\031google/api/resourc" + "e.proto\032%google/bigtable/admin/v2/common" - + ".proto\"\335\003\n\010Instance\022\021\n\004name\030\001 \001(\tB\003\340A\003\022\031" - + "\n\014display_name\030\002 \001(\tB\003\340A\002\0227\n\005state\030\003 \001(\016" - + "2(.google.bigtable.admin.v2.Instance.Sta" - + "te\0225\n\004type\030\004 \001(\0162\'.google.bigtable.admin" - + ".v2.Instance.Type\022>\n\006labels\030\005 \003(\0132..goog" - + "le.bigtable.admin.v2.Instance.LabelsEntr" - + "y\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002" - + " \001(\t:\0028\001\"5\n\005State\022\023\n\017STATE_NOT_KNOWN\020\000\022\t" - + "\n\005READY\020\001\022\014\n\010CREATING\020\002\"=\n\004Type\022\024\n\020TYPE_" - + "UNSPECIFIED\020\000\022\016\n\nPRODUCTION\020\001\022\017\n\013DEVELOP" - + "MENT\020\002:N\352AK\n bigtable.googleapis.com/Ins" - + "tance\022\'projects/{project}/instances/{ins" - + "tance}\"\315\004\n\007Cluster\022\021\n\004name\030\001 \001(\tB\003\340A\003\0228\n" - + "\010location\030\002 \001(\tB&\372A#\n!locations.googleap" - + "is.com/Location\022;\n\005state\030\003 \001(\0162\'.google." - + "bigtable.admin.v2.Cluster.StateB\003\340A\003\022\030\n\013" - + "serve_nodes\030\004 \001(\005B\003\340A\002\022C\n\024default_storag" - + "e_type\030\005 \001(\0162%.google.bigtable.admin.v2." - + "StorageType\022R\n\021encryption_config\030\006 \001(\01322" - + ".google.bigtable.admin.v2.Cluster.Encryp" - + "tionConfigB\003\340A\005\032P\n\020EncryptionConfig\022<\n\014k" - + "ms_key_name\030\001 \001(\tB&\372A#\n!cloudkms.googlea" - + "pis.com/CryptoKey\"Q\n\005State\022\023\n\017STATE_NOT_" - + "KNOWN\020\000\022\t\n\005READY\020\001\022\014\n\010CREATING\020\002\022\014\n\010RESI" - + "ZING\020\003\022\014\n\010DISABLED\020\004:`\352A]\n\037bigtable.goog" - + "leapis.com/Cluster\022:projects/{project}/i" - + "nstances/{instance}/clusters/{cluster}\"\203" - + "\004\n\nAppProfile\022\014\n\004name\030\001 \001(\t\022\014\n\004etag\030\002 \001(" - + "\t\022\023\n\013description\030\003 \001(\t\022g\n\035multi_cluster_" - + "routing_use_any\030\005 \001(\0132>.google.bigtable." - + "admin.v2.AppProfile.MultiClusterRoutingU" - + "seAnyH\000\022[\n\026single_cluster_routing\030\006 \001(\0132" - + "9.google.bigtable.admin.v2.AppProfile.Si" - + "ngleClusterRoutingH\000\0320\n\031MultiClusterRout" - + "ingUseAny\022\023\n\013cluster_ids\030\001 \003(\t\032N\n\024Single" - + "ClusterRouting\022\022\n\ncluster_id\030\001 \001(\t\022\"\n\032al" - + "low_transactional_writes\030\002 \001(\010:j\352Ag\n\"big" - + "table.googleapis.com/AppProfile\022Aproject" - + "s/{project}/instances/{instance}/appProf" - + "iles/{app_profile}B\020\n\016routing_policyB\320\002\n" - + "\034com.google.bigtable.admin.v2B\rInstanceP" - + "rotoP\001Z=google.golang.org/genproto/googl" - + "eapis/bigtable/admin/v2;admin\252\002\036Google.C" - + "loud.Bigtable.Admin.V2\312\002\036Google\\Cloud\\Bi" - + "gtable\\Admin\\V2\352\002\"Google::Cloud::Bigtabl" - + "e::Admin::V2\352Ax\n!cloudkms.googleapis.com" - + "/CryptoKey\022Sprojects/{project}/locations" - + "/{location}/keyRings/{key_ring}/cryptoKe" - + "ys/{crypto_key}b\006proto3" + + ".proto\032\037google/protobuf/timestamp.proto\032" + + "\034google/api/annotations.proto\"\230\004\n\010Instan" + + "ce\022\021\n\004name\030\001 \001(\tB\003\340A\003\022\031\n\014display_name\030\002 " + + "\001(\tB\003\340A\002\0227\n\005state\030\003 \001(\0162(.google.bigtabl" + + "e.admin.v2.Instance.State\0225\n\004type\030\004 \001(\0162" + + "\'.google.bigtable.admin.v2.Instance.Type" + + "\022>\n\006labels\030\005 \003(\0132..google.bigtable.admin" + + ".v2.Instance.LabelsEntry\0224\n\013create_time\030" + + "\007 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\032-" + + "\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(" + + "\t:\0028\001\"5\n\005State\022\023\n\017STATE_NOT_KNOWN\020\000\022\t\n\005R" + + "EADY\020\001\022\014\n\010CREATING\020\002\"=\n\004Type\022\024\n\020TYPE_UNS" + + "PECIFIED\020\000\022\016\n\nPRODUCTION\020\001\022\017\n\013DEVELOPMEN" + + "T\020\002:S\352AP\n%bigtableadmin.googleapis.com/I" + + "nstance\022\'projects/{project}/instances/{i" + + "nstance}\"\322\004\n\007Cluster\022\021\n\004name\030\001 \001(\tB\003\340A\003\022" + + "8\n\010location\030\002 \001(\tB&\372A#\n!locations.google" + + "apis.com/Location\022;\n\005state\030\003 \001(\0162\'.googl" + + "e.bigtable.admin.v2.Cluster.StateB\003\340A\003\022\030" + + "\n\013serve_nodes\030\004 \001(\005B\003\340A\002\022C\n\024default_stor" + + "age_type\030\005 \001(\0162%.google.bigtable.admin.v" + + "2.StorageType\022R\n\021encryption_config\030\006 \001(\013" + + "22.google.bigtable.admin.v2.Cluster.Encr" + + "yptionConfigB\003\340A\005\032P\n\020EncryptionConfig\022<\n" + + "\014kms_key_name\030\001 \001(\tB&\372A#\n!cloudkms.googl" + + "eapis.com/CryptoKey\"Q\n\005State\022\023\n\017STATE_NO" + + "T_KNOWN\020\000\022\t\n\005READY\020\001\022\014\n\010CREATING\020\002\022\014\n\010RE" + + "SIZING\020\003\022\014\n\010DISABLED\020\004:e\352Ab\n$bigtableadm" + + "in.googleapis.com/Cluster\022:projects/{pro" + + "ject}/instances/{instance}/clusters/{clu" + + "ster}\"\210\004\n\nAppProfile\022\014\n\004name\030\001 \001(\t\022\014\n\004et" + + "ag\030\002 \001(\t\022\023\n\013description\030\003 \001(\t\022g\n\035multi_c" + + "luster_routing_use_any\030\005 \001(\0132>.google.bi" + + "gtable.admin.v2.AppProfile.MultiClusterR" + + "outingUseAnyH\000\022[\n\026single_cluster_routing" + + "\030\006 \001(\01329.google.bigtable.admin.v2.AppPro" + + "file.SingleClusterRoutingH\000\0320\n\031MultiClus" + + "terRoutingUseAny\022\023\n\013cluster_ids\030\001 \003(\t\032N\n" + + "\024SingleClusterRouting\022\022\n\ncluster_id\030\001 \001(" + + "\t\022\"\n\032allow_transactional_writes\030\002 \001(\010:o\352" + + "Al\n\'bigtableadmin.googleapis.com/AppProf" + + "ile\022Aprojects/{project}/instances/{insta" + + "nce}/appProfiles/{app_profile}B\020\n\016routin" + + "g_policyB\320\002\n\034com.google.bigtable.admin.v" + + "2B\rInstanceProtoP\001Z=google.golang.org/ge" + + "nproto/googleapis/bigtable/admin/v2;admi" + + "n\252\002\036Google.Cloud.Bigtable.Admin.V2\312\002\036Goo" + + "gle\\Cloud\\Bigtable\\Admin\\V2\352\002\"Google::Cl" + + "oud::Bigtable::Admin::V2\352Ax\n!cloudkms.go" + + "ogleapis.com/CryptoKey\022Sprojects/{projec" + + "t}/locations/{location}/keyRings/{key_ri" + + "ng}/cryptoKeys/{crypto_key}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -125,6 +128,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.FieldBehaviorProto.getDescriptor(), com.google.api.ResourceProto.getDescriptor(), com.google.bigtable.admin.v2.CommonProto.getDescriptor(), + com.google.protobuf.TimestampProto.getDescriptor(), + com.google.api.AnnotationsProto.getDescriptor(), }); internal_static_google_bigtable_admin_v2_Instance_descriptor = getDescriptor().getMessageTypes().get(0); @@ -132,7 +137,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_bigtable_admin_v2_Instance_descriptor, new java.lang.String[] { - "Name", "DisplayName", "State", "Type", "Labels", + "Name", "DisplayName", "State", "Type", "Labels", "CreateTime", }); internal_static_google_bigtable_admin_v2_Instance_LabelsEntry_descriptor = internal_static_google_bigtable_admin_v2_Instance_descriptor.getNestedTypes().get(0); @@ -198,6 +203,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.FieldBehaviorProto.getDescriptor(); com.google.api.ResourceProto.getDescriptor(); com.google.bigtable.admin.v2.CommonProto.getDescriptor(); + com.google.protobuf.TimestampProto.getDescriptor(); + com.google.api.AnnotationsProto.getDescriptor(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequest.java index 4ccbcdc420..ce53228609 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequest.java @@ -272,10 +272,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, pageToken_); } if (pageSize_ != 0) { @@ -290,10 +290,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, pageToken_); } if (pageSize_ != 0) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponse.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponse.java index ba93c0705e..4533e82726 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponse.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponse.java @@ -353,7 +353,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < appProfiles_.size(); i++) { output.writeMessage(1, appProfiles_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nextPageToken_); } for (int i = 0; i < failedLocations_.size(); i++) { @@ -371,7 +371,7 @@ public int getSerializedSize() { for (int i = 0; i < appProfiles_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, appProfiles_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nextPageToken_); } { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequest.java index 8b46d73189..5972dcbb63 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequest.java @@ -471,19 +471,19 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, filter_); } - if (!getOrderByBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, orderBy_); } if (pageSize_ != 0) { output.writeInt32(4, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, pageToken_); } unknownFields.writeTo(output); @@ -495,19 +495,19 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, filter_); } - if (!getOrderByBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, orderBy_); } if (pageSize_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, pageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponse.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponse.java index 8c9138a8ff..1b331ac6f5 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponse.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponse.java @@ -266,7 +266,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < backups_.size(); i++) { output.writeMessage(1, backups_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nextPageToken_); } unknownFields.writeTo(output); @@ -281,7 +281,7 @@ public int getSerializedSize() { for (int i = 0; i < backups_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, backups_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nextPageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequest.java index 2d1a2cf256..2913acd14d 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequest.java @@ -241,10 +241,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, pageToken_); } unknownFields.writeTo(output); @@ -256,10 +256,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, pageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponse.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponse.java index b3a4623430..07f9a5a4c7 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponse.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponse.java @@ -356,7 +356,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < failedLocations_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, failedLocations_.getRaw(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, nextPageToken_); } unknownFields.writeTo(output); @@ -379,7 +379,7 @@ public int getSerializedSize() { size += dataSize; size += 1 * getFailedLocationsList().size(); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, nextPageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequest.java index 020341106c..1f5fa29dbb 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequest.java @@ -237,10 +237,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, pageToken_); } unknownFields.writeTo(output); @@ -252,10 +252,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, pageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponse.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponse.java index df97139dc7..eb1410fc9e 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponse.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponse.java @@ -360,7 +360,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < failedLocations_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, failedLocations_.getRaw(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, nextPageToken_); } unknownFields.writeTo(output); @@ -383,7 +383,7 @@ public int getSerializedSize() { size += dataSize; size += 1 * getFailedLocationsList().size(); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, nextPageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequest.java index 9a34175110..9b3da4debc 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequest.java @@ -272,13 +272,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (pageSize_ != 0) { output.writeInt32(2, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, pageToken_); } unknownFields.writeTo(output); @@ -290,13 +290,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (pageSize_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, pageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponse.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponse.java index 555fc82bdb..0242d97ce6 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponse.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponse.java @@ -271,7 +271,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < snapshots_.size(); i++) { output.writeMessage(1, snapshots_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nextPageToken_); } unknownFields.writeTo(output); @@ -286,7 +286,7 @@ public int getSerializedSize() { for (int i = 0; i < snapshots_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, snapshots_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nextPageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequest.java index c3681d5a0c..59e4a03792 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequest.java @@ -313,13 +313,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (view_ != com.google.bigtable.admin.v2.Table.View.VIEW_UNSPECIFIED.getNumber()) { output.writeEnum(2, view_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, pageToken_); } if (pageSize_ != 0) { @@ -334,13 +334,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (view_ != com.google.bigtable.admin.v2.Table.View.VIEW_UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(2, view_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, pageToken_); } if (pageSize_ != 0) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponse.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponse.java index 4391d17e08..fc0ec3f662 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponse.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponse.java @@ -267,7 +267,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < tables_.size(); i++) { output.writeMessage(1, tables_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nextPageToken_); } unknownFields.writeTo(output); @@ -282,7 +282,7 @@ public int getSerializedSize() { for (int i = 0; i < tables_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, tables_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nextPageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequest.java index 7210f68aca..a8afbabf6b 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequest.java @@ -657,7 +657,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_); } if (modCase_ == 2) { @@ -678,7 +678,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_); } if (modCase_ == 2) { @@ -1925,7 +1925,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } for (int i = 0; i < modifications_.size(); i++) { @@ -1940,7 +1940,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } for (int i = 0; i < modifications_.size(); i++) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadata.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadata.java index 54dbf0b734..e0d2cccfab 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadata.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadata.java @@ -241,7 +241,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (progress_ != null) { @@ -256,7 +256,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (progress_ != null) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadata.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadata.java index 61980e5447..42c7fcd1fd 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadata.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadata.java @@ -450,7 +450,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (sourceType_ @@ -461,7 +461,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (sourceInfoCase_ == 3) { output.writeMessage(3, (com.google.bigtable.admin.v2.BackupInfo) sourceInfo_); } - if (!getOptimizeTableOperationNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(optimizeTableOperationName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, optimizeTableOperationName_); } if (progress_ != null) { @@ -476,7 +476,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (sourceType_ @@ -489,7 +489,7 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize( 3, (com.google.bigtable.admin.v2.BackupInfo) sourceInfo_); } - if (!getOptimizeTableOperationNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(optimizeTableOperationName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, optimizeTableOperationName_); } diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequest.java index 60162d220f..794d623b03 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequest.java @@ -370,10 +370,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, tableId_); } if (sourceCase_ == 3) { @@ -388,10 +388,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, tableId_); } if (sourceCase_ == 3) { diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Snapshot.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Snapshot.java index 4d6db1d7a0..cabb53546b 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Snapshot.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Snapshot.java @@ -662,7 +662,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (sourceTable_ != null) { @@ -680,7 +680,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (state_ != com.google.bigtable.admin.v2.Snapshot.State.STATE_NOT_KNOWN.getNumber()) { output.writeEnum(6, state_); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, description_); } unknownFields.writeTo(output); @@ -692,7 +692,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (sourceTable_ != null) { @@ -710,7 +710,7 @@ public int getSerializedSize() { if (state_ != com.google.bigtable.admin.v2.Snapshot.State.STATE_NOT_KNOWN.getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(6, state_); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, description_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequest.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequest.java index f031f08158..643d5522d7 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequest.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequest.java @@ -441,19 +441,19 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getClusterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cluster_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, cluster_); } - if (!getSnapshotIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(snapshotId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, snapshotId_); } if (ttl_ != null) { output.writeMessage(4, getTtl()); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, description_); } unknownFields.writeTo(output); @@ -465,19 +465,19 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getClusterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cluster_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, cluster_); } - if (!getSnapshotIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(snapshotId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, snapshotId_); } if (ttl_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getTtl()); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, description_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java index c319d8b89f..9ed5da936d 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java @@ -2580,7 +2580,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } com.google.protobuf.GeneratedMessageV3.serializeStringMapTo( @@ -2604,7 +2604,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } for (java.util.Map.Entry diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java index eafc54bad8..f82367733f 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java @@ -97,7 +97,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "_type\030\001 \001(\0162+.google.bigtable.admin.v2.R" + "estoreSourceType\022;\n\013backup_info\030\002 \001(\0132$." + "google.bigtable.admin.v2.BackupInfoH\000B\r\n" - + "\013source_info\"\330\010\n\005Table\022\014\n\004name\030\001 \001(\t\022J\n\016" + + "\013source_info\"\335\010\n\005Table\022\014\n\004name\030\001 \001(\t\022J\n\016" + "cluster_states\030\002 \003(\01322.google.bigtable.a" + "dmin.v2.Table.ClusterStatesEntry\022L\n\017colu" + "mn_families\030\003 \003(\01323.google.bigtable.admi" @@ -122,69 +122,70 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "MP_GRANULARITY_UNSPECIFIED\020\000\022\n\n\006MILLIS\020\001" + "\"q\n\004View\022\024\n\020VIEW_UNSPECIFIED\020\000\022\r\n\tNAME_O" + "NLY\020\001\022\017\n\013SCHEMA_VIEW\020\002\022\024\n\020REPLICATION_VI" - + "EW\020\003\022\023\n\017ENCRYPTION_VIEW\020\005\022\010\n\004FULL\020\004:Z\352AW" - + "\n\035bigtable.googleapis.com/Table\0226project" - + "s/{project}/instances/{instance}/tables/" - + "{table}\"A\n\014ColumnFamily\0221\n\007gc_rule\030\001 \001(\013" - + "2 .google.bigtable.admin.v2.GcRule\"\325\002\n\006G" - + "cRule\022\032\n\020max_num_versions\030\001 \001(\005H\000\022,\n\007max" - + "_age\030\002 \001(\0132\031.google.protobuf.DurationH\000\022" - + "E\n\014intersection\030\003 \001(\0132-.google.bigtable." - + "admin.v2.GcRule.IntersectionH\000\0227\n\005union\030" - + "\004 \001(\0132&.google.bigtable.admin.v2.GcRule." - + "UnionH\000\032?\n\014Intersection\022/\n\005rules\030\001 \003(\0132 " - + ".google.bigtable.admin.v2.GcRule\0328\n\005Unio" - + "n\022/\n\005rules\030\001 \003(\0132 .google.bigtable.admin" - + ".v2.GcRuleB\006\n\004rule\"\331\002\n\016EncryptionInfo\022U\n" - + "\017encryption_type\030\003 \001(\01627.google.bigtable" - + ".admin.v2.EncryptionInfo.EncryptionTypeB" - + "\003\340A\003\0222\n\021encryption_status\030\004 \001(\0132\022.google" - + ".rpc.StatusB\003\340A\003\022I\n\017kms_key_version\030\002 \001(" - + "\tB0\340A\003\372A*\n(cloudkms.googleapis.com/Crypt" - + "oKeyVersion\"q\n\016EncryptionType\022\037\n\033ENCRYPT" - + "ION_TYPE_UNSPECIFIED\020\000\022\035\n\031GOOGLE_DEFAULT" - + "_ENCRYPTION\020\001\022\037\n\033CUSTOMER_MANAGED_ENCRYP" - + "TION\020\002\"\307\003\n\010Snapshot\022\014\n\004name\030\001 \001(\t\0225\n\014sou" - + "rce_table\030\002 \001(\0132\037.google.bigtable.admin." - + "v2.Table\022\027\n\017data_size_bytes\030\003 \001(\003\022/\n\013cre" - + "ate_time\030\004 \001(\0132\032.google.protobuf.Timesta" - + "mp\022/\n\013delete_time\030\005 \001(\0132\032.google.protobu" - + "f.Timestamp\0227\n\005state\030\006 \001(\0162(.google.bigt" - + "able.admin.v2.Snapshot.State\022\023\n\013descript" - + "ion\030\007 \001(\t\"5\n\005State\022\023\n\017STATE_NOT_KNOWN\020\000\022" - + "\t\n\005READY\020\001\022\014\n\010CREATING\020\002:v\352As\n bigtable." - + "googleapis.com/Snapshot\022Oprojects/{proje" - + "ct}/instances/{instance}/clusters/{clust" - + "er}/snapshots/{snapshot}\"\237\004\n\006Backup\022\021\n\004n" - + "ame\030\001 \001(\tB\003\340A\003\022\034\n\014source_table\030\002 \001(\tB\006\340A" - + "\005\340A\002\0224\n\013expire_time\030\003 \001(\0132\032.google.proto" - + "buf.TimestampB\003\340A\002\0223\n\nstart_time\030\004 \001(\0132\032" - + ".google.protobuf.TimestampB\003\340A\003\0221\n\010end_t" - + "ime\030\005 \001(\0132\032.google.protobuf.TimestampB\003\340" - + "A\003\022\027\n\nsize_bytes\030\006 \001(\003B\003\340A\003\022:\n\005state\030\007 \001" - + "(\0162&.google.bigtable.admin.v2.Backup.Sta" - + "teB\003\340A\003\022F\n\017encryption_info\030\t \001(\0132(.googl" - + "e.bigtable.admin.v2.EncryptionInfoB\003\340A\003\"" - + "7\n\005State\022\025\n\021STATE_UNSPECIFIED\020\000\022\014\n\010CREAT" - + "ING\020\001\022\t\n\005READY\020\002:p\352Am\n\036bigtable.googleap" - + "is.com/Backup\022Kprojects/{project}/instan" - + "ces/{instance}/clusters/{cluster}/backup" - + "s/{backup}\"\244\001\n\nBackupInfo\022\023\n\006backup\030\001 \001(" - + "\tB\003\340A\003\0223\n\nstart_time\030\002 \001(\0132\032.google.prot" - + "obuf.TimestampB\003\340A\003\0221\n\010end_time\030\003 \001(\0132\032." - + "google.protobuf.TimestampB\003\340A\003\022\031\n\014source" - + "_table\030\004 \001(\tB\003\340A\003*D\n\021RestoreSourceType\022#" - + "\n\037RESTORE_SOURCE_TYPE_UNSPECIFIED\020\000\022\n\n\006B" - + "ACKUP\020\001B\374\002\n\034com.google.bigtable.admin.v2" - + "B\nTableProtoP\001Z=google.golang.org/genpro" - + "to/googleapis/bigtable/admin/v2;admin\252\002\036" - + "Google.Cloud.Bigtable.Admin.V2\312\002\036Google\\" - + "Cloud\\Bigtable\\Admin\\V2\352\002\"Google::Cloud:" - + ":Bigtable::Admin::V2\352A\246\001\n(cloudkms.googl" - + "eapis.com/CryptoKeyVersion\022zprojects/{pr" - + "oject}/locations/{location}/keyRings/{ke" - + "y_ring}/cryptoKeys/{crypto_key}/cryptoKe" - + "yVersions/{crypto_key_version}b\006proto3" + + "EW\020\003\022\023\n\017ENCRYPTION_VIEW\020\005\022\010\n\004FULL\020\004:_\352A\\" + + "\n\"bigtableadmin.googleapis.com/Table\0226pr" + + "ojects/{project}/instances/{instance}/ta" + + "bles/{table}\"A\n\014ColumnFamily\0221\n\007gc_rule\030" + + "\001 \001(\0132 .google.bigtable.admin.v2.GcRule\"" + + "\325\002\n\006GcRule\022\032\n\020max_num_versions\030\001 \001(\005H\000\022," + + "\n\007max_age\030\002 \001(\0132\031.google.protobuf.Durati" + + "onH\000\022E\n\014intersection\030\003 \001(\0132-.google.bigt" + + "able.admin.v2.GcRule.IntersectionH\000\0227\n\005u" + + "nion\030\004 \001(\0132&.google.bigtable.admin.v2.Gc" + + "Rule.UnionH\000\032?\n\014Intersection\022/\n\005rules\030\001 " + + "\003(\0132 .google.bigtable.admin.v2.GcRule\0328\n" + + "\005Union\022/\n\005rules\030\001 \003(\0132 .google.bigtable." + + "admin.v2.GcRuleB\006\n\004rule\"\331\002\n\016EncryptionIn" + + "fo\022U\n\017encryption_type\030\003 \001(\01627.google.big" + + "table.admin.v2.EncryptionInfo.Encryption" + + "TypeB\003\340A\003\0222\n\021encryption_status\030\004 \001(\0132\022.g" + + "oogle.rpc.StatusB\003\340A\003\022I\n\017kms_key_version" + + "\030\002 \001(\tB0\340A\003\372A*\n(cloudkms.googleapis.com/" + + "CryptoKeyVersion\"q\n\016EncryptionType\022\037\n\033EN" + + "CRYPTION_TYPE_UNSPECIFIED\020\000\022\035\n\031GOOGLE_DE" + + "FAULT_ENCRYPTION\020\001\022\037\n\033CUSTOMER_MANAGED_E" + + "NCRYPTION\020\002\"\314\003\n\010Snapshot\022\014\n\004name\030\001 \001(\t\0225" + + "\n\014source_table\030\002 \001(\0132\037.google.bigtable.a" + + "dmin.v2.Table\022\027\n\017data_size_bytes\030\003 \001(\003\022/" + + "\n\013create_time\030\004 \001(\0132\032.google.protobuf.Ti" + + "mestamp\022/\n\013delete_time\030\005 \001(\0132\032.google.pr" + + "otobuf.Timestamp\0227\n\005state\030\006 \001(\0162(.google" + + ".bigtable.admin.v2.Snapshot.State\022\023\n\013des" + + "cription\030\007 \001(\t\"5\n\005State\022\023\n\017STATE_NOT_KNO" + + "WN\020\000\022\t\n\005READY\020\001\022\014\n\010CREATING\020\002:{\352Ax\n%bigt" + + "ableadmin.googleapis.com/Snapshot\022Oproje" + + "cts/{project}/instances/{instance}/clust" + + "ers/{cluster}/snapshots/{snapshot}\"\244\004\n\006B" + + "ackup\022\021\n\004name\030\001 \001(\tB\003\340A\003\022\034\n\014source_table" + + "\030\002 \001(\tB\006\340A\005\340A\002\0224\n\013expire_time\030\003 \001(\0132\032.go" + + "ogle.protobuf.TimestampB\003\340A\002\0223\n\nstart_ti" + + "me\030\004 \001(\0132\032.google.protobuf.TimestampB\003\340A" + + "\003\0221\n\010end_time\030\005 \001(\0132\032.google.protobuf.Ti" + + "mestampB\003\340A\003\022\027\n\nsize_bytes\030\006 \001(\003B\003\340A\003\022:\n" + + "\005state\030\007 \001(\0162&.google.bigtable.admin.v2." + + "Backup.StateB\003\340A\003\022F\n\017encryption_info\030\t \001" + + "(\0132(.google.bigtable.admin.v2.Encryption" + + "InfoB\003\340A\003\"7\n\005State\022\025\n\021STATE_UNSPECIFIED\020" + + "\000\022\014\n\010CREATING\020\001\022\t\n\005READY\020\002:u\352Ar\n#bigtabl" + + "eadmin.googleapis.com/Backup\022Kprojects/{" + + "project}/instances/{instance}/clusters/{" + + "cluster}/backups/{backup}\"\244\001\n\nBackupInfo" + + "\022\023\n\006backup\030\001 \001(\tB\003\340A\003\0223\n\nstart_time\030\002 \001(" + + "\0132\032.google.protobuf.TimestampB\003\340A\003\0221\n\010en" + + "d_time\030\003 \001(\0132\032.google.protobuf.Timestamp" + + "B\003\340A\003\022\031\n\014source_table\030\004 \001(\tB\003\340A\003*D\n\021Rest" + + "oreSourceType\022#\n\037RESTORE_SOURCE_TYPE_UNS" + + "PECIFIED\020\000\022\n\n\006BACKUP\020\001B\374\002\n\034com.google.bi" + + "gtable.admin.v2B\nTableProtoP\001Z=google.go" + + "lang.org/genproto/googleapis/bigtable/ad" + + "min/v2;admin\252\002\036Google.Cloud.Bigtable.Adm" + + "in.V2\312\002\036Google\\Cloud\\Bigtable\\Admin\\V2\352\002" + + "\"Google::Cloud::Bigtable::Admin::V2\352A\246\001\n" + + "(cloudkms.googleapis.com/CryptoKeyVersio" + + "n\022zprojects/{project}/locations/{locatio" + + "n}/keyRings/{key_ring}/cryptoKeys/{crypt" + + "o_key}/cryptoKeyVersions/{crypto_key_ver" + + "sion}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_instance_admin.proto b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_instance_admin.proto index ca3aaed7a1..63fdd8ea4f 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_instance_admin.proto +++ b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_instance_admin.proto @@ -271,7 +271,7 @@ message GetInstanceRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; } @@ -325,7 +325,7 @@ message DeleteInstanceRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; } @@ -338,7 +338,7 @@ message CreateClusterRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -359,7 +359,7 @@ message GetClusterRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; } @@ -373,7 +373,7 @@ message ListClustersRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -404,7 +404,7 @@ message DeleteClusterRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; } @@ -465,7 +465,7 @@ message CreateAppProfileRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -489,7 +489,7 @@ message GetAppProfileRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/AppProfile" + type: "bigtableadmin.googleapis.com/AppProfile" } ]; } @@ -504,7 +504,7 @@ message ListAppProfilesRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -560,7 +560,7 @@ message DeleteAppProfileRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/AppProfile" + type: "bigtableadmin.googleapis.com/AppProfile" } ]; diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_table_admin.proto b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_table_admin.proto index ff2076c50e..88bd870474 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_table_admin.proto +++ b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/bigtable_table_admin.proto @@ -340,7 +340,7 @@ message RestoreTableRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -355,7 +355,7 @@ message RestoreTableRequest { // Name of the backup from which to restore. Values are of the form // `projects//instances//clusters//backups/`. string backup = 3 [(google.api.resource_reference) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" }]; } } @@ -417,7 +417,7 @@ message CreateTableRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -461,7 +461,7 @@ message CreateTableFromSnapshotRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -476,7 +476,7 @@ message CreateTableFromSnapshotRequest { string source_snapshot = 3 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" } ]; } @@ -490,7 +490,7 @@ message DropRowRangeRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -513,7 +513,7 @@ message ListTablesRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -557,7 +557,7 @@ message GetTableRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -575,7 +575,7 @@ message DeleteTableRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; } @@ -610,7 +610,7 @@ message ModifyColumnFamiliesRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -630,7 +630,7 @@ message GenerateConsistencyTokenRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; } @@ -651,7 +651,7 @@ message CheckConsistencyRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -681,7 +681,7 @@ message SnapshotTableRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -691,7 +691,7 @@ message SnapshotTableRequest { string cluster = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; @@ -725,7 +725,7 @@ message GetSnapshotRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" } ]; } @@ -746,7 +746,7 @@ message ListSnapshotsRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; @@ -789,7 +789,7 @@ message DeleteSnapshotRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" } ]; } @@ -837,7 +837,7 @@ message CreateBackupRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; @@ -893,7 +893,7 @@ message GetBackupRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" } ]; } @@ -906,7 +906,7 @@ message DeleteBackupRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" } ]; } @@ -920,7 +920,7 @@ message ListBackupsRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/instance.proto b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/instance.proto index aecf7ee53c..d946b5c686 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/instance.proto +++ b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/instance.proto @@ -19,6 +19,8 @@ package google.bigtable.admin.v2; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/bigtable/admin/v2/common.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.Bigtable.Admin.V2"; option go_package = "google.golang.org/genproto/googleapis/bigtable/admin/v2;admin"; @@ -38,7 +40,7 @@ option (google.api.resource_definition) = { // [Clusters][google.bigtable.admin.v2.Cluster] in the instance. message Instance { option (google.api.resource) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" pattern: "projects/{project}/instances/{instance}" }; @@ -105,6 +107,11 @@ message Instance { // * No more than 64 labels can be associated with a given resource. // * Keys and values must both be under 128 bytes. map labels = 5; + + // Output only. A server-assigned timestamp representing when this Instance was created. + // For instances created before this field was added (August 2021), this value + // is `seconds: 0, nanos: 1`. + google.protobuf.Timestamp create_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; } // A resizable group of nodes in a particular cloud location, capable @@ -112,7 +119,7 @@ message Instance { // [Instance][google.bigtable.admin.v2.Instance]. message Cluster { option (google.api.resource) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" pattern: "projects/{project}/instances/{instance}/clusters/{cluster}" }; @@ -191,7 +198,7 @@ message Cluster { // from a particular end user application. message AppProfile { option (google.api.resource) = { - type: "bigtable.googleapis.com/AppProfile" + type: "bigtableadmin.googleapis.com/AppProfile" pattern: "projects/{project}/instances/{instance}/appProfiles/{app_profile}" }; diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto index a5578225ea..4e2d709abf 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto +++ b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto @@ -60,7 +60,7 @@ message RestoreInfo { // Each table is served using the resources of its parent cluster. message Table { option (google.api.resource) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" pattern: "projects/{project}/instances/{instance}/tables/{table}" }; @@ -266,7 +266,7 @@ message EncryptionInfo { // for production use. It is not subject to any SLA or deprecation policy. message Snapshot { option (google.api.resource) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" pattern: "projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}" }; @@ -316,7 +316,7 @@ message Snapshot { // A backup of a Cloud Bigtable table. message Backup { option (google.api.resource) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" pattern: "projects/{project}/instances/{instance}/clusters/{cluster}/backups/{backup}" }; diff --git a/proto-google-cloud-bigtable-v2/pom.xml b/proto-google-cloud-bigtable-v2/pom.xml index 14737cd644..74c0aef67c 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.2.0 + 2.3.0 proto-google-cloud-bigtable-v2 PROTO library for proto-google-cloud-bigtable-v2 com.google.cloud google-cloud-bigtable-parent - 2.2.0 + 2.3.0 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.2.0 + 2.3.0 pom import com.google.cloud google-cloud-bigtable-bom - 2.2.0 + 2.3.0 pom import diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java index 774b16d0a3..2faa963ae0 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java @@ -102,110 +102,111 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "pi/field_behavior.proto\032\031google/api/reso" + "urce.proto\032\035google/bigtable/v2/data.prot" + "o\032\036google/protobuf/wrappers.proto\032\027googl" - + "e/rpc/status.proto\"\321\001\n\017ReadRowsRequest\0229" - + "\n\ntable_name\030\001 \001(\tB%\340A\002\372A\037\n\035bigtable.goo" - + "gleapis.com/Table\022\026\n\016app_profile_id\030\005 \001(" - + "\t\022(\n\004rows\030\002 \001(\0132\032.google.bigtable.v2.Row" - + "Set\022-\n\006filter\030\003 \001(\0132\035.google.bigtable.v2" - + ".RowFilter\022\022\n\nrows_limit\030\004 \001(\003\"\370\002\n\020ReadR" - + "owsResponse\022>\n\006chunks\030\001 \003(\0132..google.big" - + "table.v2.ReadRowsResponse.CellChunk\022\034\n\024l" - + "ast_scanned_row_key\030\002 \001(\014\032\205\002\n\tCellChunk\022" - + "\017\n\007row_key\030\001 \001(\014\0221\n\013family_name\030\002 \001(\0132\034." - + "google.protobuf.StringValue\022.\n\tqualifier" - + "\030\003 \001(\0132\033.google.protobuf.BytesValue\022\030\n\020t" - + "imestamp_micros\030\004 \001(\003\022\016\n\006labels\030\005 \003(\t\022\r\n" - + "\005value\030\006 \001(\014\022\022\n\nvalue_size\030\007 \001(\005\022\023\n\trese" - + "t_row\030\010 \001(\010H\000\022\024\n\ncommit_row\030\t \001(\010H\000B\014\n\nr" - + "ow_status\"i\n\024SampleRowKeysRequest\0229\n\ntab" - + "le_name\030\001 \001(\tB%\340A\002\372A\037\n\035bigtable.googleap" - + "is.com/Table\022\026\n\016app_profile_id\030\002 \001(\t\">\n\025" - + "SampleRowKeysResponse\022\017\n\007row_key\030\001 \001(\014\022\024" - + "\n\014offset_bytes\030\002 \001(\003\"\261\001\n\020MutateRowReques" - + "t\0229\n\ntable_name\030\001 \001(\tB%\340A\002\372A\037\n\035bigtable." - + "googleapis.com/Table\022\026\n\016app_profile_id\030\004" - + " \001(\t\022\024\n\007row_key\030\002 \001(\014B\003\340A\002\0224\n\tmutations\030" - + "\003 \003(\0132\034.google.bigtable.v2.MutationB\003\340A\002" - + "\"\023\n\021MutateRowResponse\"\371\001\n\021MutateRowsRequ" - + "est\0229\n\ntable_name\030\001 \001(\tB%\340A\002\372A\037\n\035bigtabl" - + "e.googleapis.com/Table\022\026\n\016app_profile_id" - + "\030\003 \001(\t\022A\n\007entries\030\002 \003(\0132+.google.bigtabl" - + "e.v2.MutateRowsRequest.EntryB\003\340A\002\032N\n\005Ent" - + "ry\022\017\n\007row_key\030\001 \001(\014\0224\n\tmutations\030\002 \003(\0132\034" - + ".google.bigtable.v2.MutationB\003\340A\002\"\217\001\n\022Mu" - + "tateRowsResponse\022=\n\007entries\030\001 \003(\0132,.goog" - + "le.bigtable.v2.MutateRowsResponse.Entry\032" - + ":\n\005Entry\022\r\n\005index\030\001 \001(\003\022\"\n\006status\030\002 \001(\0132" - + "\022.google.rpc.Status\"\251\002\n\030CheckAndMutateRo" - + "wRequest\0229\n\ntable_name\030\001 \001(\tB%\340A\002\372A\037\n\035bi" - + "gtable.googleapis.com/Table\022\026\n\016app_profi" - + "le_id\030\007 \001(\t\022\024\n\007row_key\030\002 \001(\014B\003\340A\002\0227\n\020pre" - + "dicate_filter\030\006 \001(\0132\035.google.bigtable.v2" - + ".RowFilter\0224\n\016true_mutations\030\004 \003(\0132\034.goo" - + "gle.bigtable.v2.Mutation\0225\n\017false_mutati" - + "ons\030\005 \003(\0132\034.google.bigtable.v2.Mutation\"" - + "6\n\031CheckAndMutateRowResponse\022\031\n\021predicat" - + "e_matched\030\001 \001(\010\"\301\001\n\031ReadModifyWriteRowRe" - + "quest\0229\n\ntable_name\030\001 \001(\tB%\340A\002\372A\037\n\035bigta" - + "ble.googleapis.com/Table\022\026\n\016app_profile_" - + "id\030\004 \001(\t\022\024\n\007row_key\030\002 \001(\014B\003\340A\002\022;\n\005rules\030" - + "\003 \003(\0132\'.google.bigtable.v2.ReadModifyWri" - + "teRuleB\003\340A\002\"B\n\032ReadModifyWriteRowRespons" - + "e\022$\n\003row\030\001 \001(\0132\027.google.bigtable.v2.Row2" - + "\304\016\n\010Bigtable\022\306\001\n\010ReadRows\022#.google.bigta" - + "ble.v2.ReadRowsRequest\032$.google.bigtable" - + ".v2.ReadRowsResponse\"m\202\323\344\223\002>\"9/v2/{table" - + "_name=projects/*/instances/*/tables/*}:r" - + "eadRows:\001*\332A\ntable_name\332A\031table_name,app" - + "_profile_id0\001\022\327\001\n\rSampleRowKeys\022(.google" - + ".bigtable.v2.SampleRowKeysRequest\032).goog" - + "le.bigtable.v2.SampleRowKeysResponse\"o\202\323" - + "\344\223\002@\022>/v2/{table_name=projects/*/instanc" - + "es/*/tables/*}:sampleRowKeys\332A\ntable_nam" - + "e\332A\031table_name,app_profile_id0\001\022\355\001\n\tMuta" - + "teRow\022$.google.bigtable.v2.MutateRowRequ" - + "est\032%.google.bigtable.v2.MutateRowRespon" - + "se\"\222\001\202\323\344\223\002?\":/v2/{table_name=projects/*/" - + "instances/*/tables/*}:mutateRow:\001*\332A\034tab" - + "le_name,row_key,mutations\332A+table_name,r" - + "ow_key,mutations,app_profile_id\022\336\001\n\nMuta" - + "teRows\022%.google.bigtable.v2.MutateRowsRe" - + "quest\032&.google.bigtable.v2.MutateRowsRes" - + "ponse\"\177\202\323\344\223\002@\";/v2/{table_name=projects/" - + "*/instances/*/tables/*}:mutateRows:\001*\332A\022" - + "table_name,entries\332A!table_name,entries," - + "app_profile_id0\001\022\331\002\n\021CheckAndMutateRow\022," - + ".google.bigtable.v2.CheckAndMutateRowReq" - + "uest\032-.google.bigtable.v2.CheckAndMutate" - + "RowResponse\"\346\001\202\323\344\223\002G\"B/v2/{table_name=pr" - + "ojects/*/instances/*/tables/*}:checkAndM" - + "utateRow:\001*\332ABtable_name,row_key,predica" - + "te_filter,true_mutations,false_mutations" - + "\332AQtable_name,row_key,predicate_filter,t" - + "rue_mutations,false_mutations,app_profil" - + "e_id\022\211\002\n\022ReadModifyWriteRow\022-.google.big" - + "table.v2.ReadModifyWriteRowRequest\032..goo" - + "gle.bigtable.v2.ReadModifyWriteRowRespon" - + "se\"\223\001\202\323\344\223\002H\"C/v2/{table_name=projects/*/" - + "instances/*/tables/*}:readModifyWriteRow" - + ":\001*\332A\030table_name,row_key,rules\332A\'table_n" - + "ame,row_key,rules,app_profile_id\032\333\002\312A\027bi" - + "gtable.googleapis.com\322A\275\002https://www.goo" - + "gleapis.com/auth/bigtable.data,https://w" - + "ww.googleapis.com/auth/bigtable.data.rea" - + "donly,https://www.googleapis.com/auth/cl" - + "oud-bigtable.data,https://www.googleapis" - + ".com/auth/cloud-bigtable.data.readonly,h" - + "ttps://www.googleapis.com/auth/cloud-pla" - + "tform,https://www.googleapis.com/auth/cl" - + "oud-platform.read-onlyB\223\002\n\026com.google.bi" - + "gtable.v2B\rBigtableProtoP\001Z:google.golan" - + "g.org/genproto/googleapis/bigtable/v2;bi" - + "gtable\252\002\030Google.Cloud.Bigtable.V2\312\002\030Goog" - + "le\\Cloud\\Bigtable\\V2\352\002\033Google::Cloud::Bi" - + "gtable::V2\352AW\n\035bigtable.googleapis.com/T" - + "able\0226projects/{project}/instances/{inst" - + "ance}/tables/{table}b\006proto3" + + "e/rpc/status.proto\"\326\001\n\017ReadRowsRequest\022>" + + "\n\ntable_name\030\001 \001(\tB*\340A\002\372A$\n\"bigtableadmi" + + "n.googleapis.com/Table\022\026\n\016app_profile_id" + + "\030\005 \001(\t\022(\n\004rows\030\002 \001(\0132\032.google.bigtable.v" + + "2.RowSet\022-\n\006filter\030\003 \001(\0132\035.google.bigtab" + + "le.v2.RowFilter\022\022\n\nrows_limit\030\004 \001(\003\"\370\002\n\020" + + "ReadRowsResponse\022>\n\006chunks\030\001 \003(\0132..googl" + + "e.bigtable.v2.ReadRowsResponse.CellChunk" + + "\022\034\n\024last_scanned_row_key\030\002 \001(\014\032\205\002\n\tCellC" + + "hunk\022\017\n\007row_key\030\001 \001(\014\0221\n\013family_name\030\002 \001" + + "(\0132\034.google.protobuf.StringValue\022.\n\tqual" + + "ifier\030\003 \001(\0132\033.google.protobuf.BytesValue" + + "\022\030\n\020timestamp_micros\030\004 \001(\003\022\016\n\006labels\030\005 \003" + + "(\t\022\r\n\005value\030\006 \001(\014\022\022\n\nvalue_size\030\007 \001(\005\022\023\n" + + "\treset_row\030\010 \001(\010H\000\022\024\n\ncommit_row\030\t \001(\010H\000" + + "B\014\n\nrow_status\"n\n\024SampleRowKeysRequest\022>" + + "\n\ntable_name\030\001 \001(\tB*\340A\002\372A$\n\"bigtableadmi" + + "n.googleapis.com/Table\022\026\n\016app_profile_id" + + "\030\002 \001(\t\">\n\025SampleRowKeysResponse\022\017\n\007row_k" + + "ey\030\001 \001(\014\022\024\n\014offset_bytes\030\002 \001(\003\"\266\001\n\020Mutat" + + "eRowRequest\022>\n\ntable_name\030\001 \001(\tB*\340A\002\372A$\n" + + "\"bigtableadmin.googleapis.com/Table\022\026\n\016a" + + "pp_profile_id\030\004 \001(\t\022\024\n\007row_key\030\002 \001(\014B\003\340A" + + "\002\0224\n\tmutations\030\003 \003(\0132\034.google.bigtable.v" + + "2.MutationB\003\340A\002\"\023\n\021MutateRowResponse\"\376\001\n" + + "\021MutateRowsRequest\022>\n\ntable_name\030\001 \001(\tB*" + + "\340A\002\372A$\n\"bigtableadmin.googleapis.com/Tab" + + "le\022\026\n\016app_profile_id\030\003 \001(\t\022A\n\007entries\030\002 " + + "\003(\0132+.google.bigtable.v2.MutateRowsReque" + + "st.EntryB\003\340A\002\032N\n\005Entry\022\017\n\007row_key\030\001 \001(\014\022" + + "4\n\tmutations\030\002 \003(\0132\034.google.bigtable.v2." + + "MutationB\003\340A\002\"\217\001\n\022MutateRowsResponse\022=\n\007" + + "entries\030\001 \003(\0132,.google.bigtable.v2.Mutat" + + "eRowsResponse.Entry\032:\n\005Entry\022\r\n\005index\030\001 " + + "\001(\003\022\"\n\006status\030\002 \001(\0132\022.google.rpc.Status\"" + + "\256\002\n\030CheckAndMutateRowRequest\022>\n\ntable_na" + + "me\030\001 \001(\tB*\340A\002\372A$\n\"bigtableadmin.googleap" + + "is.com/Table\022\026\n\016app_profile_id\030\007 \001(\t\022\024\n\007" + + "row_key\030\002 \001(\014B\003\340A\002\0227\n\020predicate_filter\030\006" + + " \001(\0132\035.google.bigtable.v2.RowFilter\0224\n\016t" + + "rue_mutations\030\004 \003(\0132\034.google.bigtable.v2" + + ".Mutation\0225\n\017false_mutations\030\005 \003(\0132\034.goo" + + "gle.bigtable.v2.Mutation\"6\n\031CheckAndMuta" + + "teRowResponse\022\031\n\021predicate_matched\030\001 \001(\010" + + "\"\306\001\n\031ReadModifyWriteRowRequest\022>\n\ntable_" + + "name\030\001 \001(\tB*\340A\002\372A$\n\"bigtableadmin.google" + + "apis.com/Table\022\026\n\016app_profile_id\030\004 \001(\t\022\024" + + "\n\007row_key\030\002 \001(\014B\003\340A\002\022;\n\005rules\030\003 \003(\0132\'.go" + + "ogle.bigtable.v2.ReadModifyWriteRuleB\003\340A" + + "\002\"B\n\032ReadModifyWriteRowResponse\022$\n\003row\030\001" + + " \001(\0132\027.google.bigtable.v2.Row2\304\016\n\010Bigtab" + + "le\022\306\001\n\010ReadRows\022#.google.bigtable.v2.Rea" + + "dRowsRequest\032$.google.bigtable.v2.ReadRo" + + "wsResponse\"m\202\323\344\223\002>\"9/v2/{table_name=proj" + + "ects/*/instances/*/tables/*}:readRows:\001*" + + "\332A\ntable_name\332A\031table_name,app_profile_i" + + "d0\001\022\327\001\n\rSampleRowKeys\022(.google.bigtable." + + "v2.SampleRowKeysRequest\032).google.bigtabl" + + "e.v2.SampleRowKeysResponse\"o\202\323\344\223\002@\022>/v2/" + + "{table_name=projects/*/instances/*/table" + + "s/*}:sampleRowKeys\332A\ntable_name\332A\031table_" + + "name,app_profile_id0\001\022\355\001\n\tMutateRow\022$.go" + + "ogle.bigtable.v2.MutateRowRequest\032%.goog" + + "le.bigtable.v2.MutateRowResponse\"\222\001\202\323\344\223\002" + + "?\":/v2/{table_name=projects/*/instances/" + + "*/tables/*}:mutateRow:\001*\332A\034table_name,ro" + + "w_key,mutations\332A+table_name,row_key,mut" + + "ations,app_profile_id\022\336\001\n\nMutateRows\022%.g" + + "oogle.bigtable.v2.MutateRowsRequest\032&.go" + + "ogle.bigtable.v2.MutateRowsResponse\"\177\202\323\344" + + "\223\002@\";/v2/{table_name=projects/*/instance" + + "s/*/tables/*}:mutateRows:\001*\332A\022table_name" + + ",entries\332A!table_name,entries,app_profil" + + "e_id0\001\022\331\002\n\021CheckAndMutateRow\022,.google.bi" + + "gtable.v2.CheckAndMutateRowRequest\032-.goo" + + "gle.bigtable.v2.CheckAndMutateRowRespons" + + "e\"\346\001\202\323\344\223\002G\"B/v2/{table_name=projects/*/i" + + "nstances/*/tables/*}:checkAndMutateRow:\001" + + "*\332ABtable_name,row_key,predicate_filter," + + "true_mutations,false_mutations\332AQtable_n" + + "ame,row_key,predicate_filter,true_mutati" + + "ons,false_mutations,app_profile_id\022\211\002\n\022R" + + "eadModifyWriteRow\022-.google.bigtable.v2.R" + + "eadModifyWriteRowRequest\032..google.bigtab" + + "le.v2.ReadModifyWriteRowResponse\"\223\001\202\323\344\223\002" + + "H\"C/v2/{table_name=projects/*/instances/" + + "*/tables/*}:readModifyWriteRow:\001*\332A\030tabl" + + "e_name,row_key,rules\332A\'table_name,row_ke" + + "y,rules,app_profile_id\032\333\002\312A\027bigtable.goo" + + "gleapis.com\322A\275\002https://www.googleapis.co" + + "m/auth/bigtable.data,https://www.googlea" + + "pis.com/auth/bigtable.data.readonly,http" + + "s://www.googleapis.com/auth/cloud-bigtab" + + "le.data,https://www.googleapis.com/auth/" + + "cloud-bigtable.data.readonly,https://www" + + ".googleapis.com/auth/cloud-platform,http" + + "s://www.googleapis.com/auth/cloud-platfo" + + "rm.read-onlyB\230\002\n\026com.google.bigtable.v2B" + + "\rBigtableProtoP\001Z:google.golang.org/genp" + + "roto/googleapis/bigtable/v2;bigtable\252\002\030G" + + "oogle.Cloud.Bigtable.V2\312\002\030Google\\Cloud\\B" + + "igtable\\V2\352\002\033Google::Cloud::Bigtable::V2" + + "\352A\\\n\"bigtableadmin.googleapis.com/Table\022" + + "6projects/{project}/instances/{instance}" + + "/tables/{table}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequest.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequest.java index efa13e99a8..412b8551d6 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequest.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequest.java @@ -546,7 +546,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tableName_); } if (!rowKey_.isEmpty()) { @@ -561,7 +561,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (predicateFilter_ != null) { output.writeMessage(6, getPredicateFilter()); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, appProfileId_); } unknownFields.writeTo(output); @@ -573,7 +573,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tableName_); } if (!rowKey_.isEmpty()) { @@ -588,7 +588,7 @@ public int getSerializedSize() { if (predicateFilter_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getPredicateFilter()); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, appProfileId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ColumnRange.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ColumnRange.java index 66a55fe241..e859f2472d 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ColumnRange.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ColumnRange.java @@ -435,7 +435,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, familyName_); } if (startQualifierCase_ == 2) { @@ -459,7 +459,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, familyName_); } if (startQualifierCase_ == 2) { diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Family.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Family.java index 611af92f83..d39f7e5ae0 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Family.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Family.java @@ -267,7 +267,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } for (int i = 0; i < columns_.size(); i++) { @@ -282,7 +282,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } for (int i = 0; i < columns_.size(); i++) { diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowRequest.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowRequest.java index 2187ce7a6c..dbf266c82c 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowRequest.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowRequest.java @@ -369,7 +369,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tableName_); } if (!rowKey_.isEmpty()) { @@ -378,7 +378,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < mutations_.size(); i++) { output.writeMessage(3, mutations_.get(i)); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, appProfileId_); } unknownFields.writeTo(output); @@ -390,7 +390,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tableName_); } if (!rowKey_.isEmpty()) { @@ -399,7 +399,7 @@ public int getSerializedSize() { for (int i = 0; i < mutations_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, mutations_.get(i)); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, appProfileId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsRequest.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsRequest.java index 49650dcd89..b6c3554b35 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsRequest.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsRequest.java @@ -1588,13 +1588,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tableName_); } for (int i = 0; i < entries_.size(); i++) { output.writeMessage(2, entries_.get(i)); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, appProfileId_); } unknownFields.writeTo(output); @@ -1606,13 +1606,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tableName_); } for (int i = 0; i < entries_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, entries_.get(i)); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, appProfileId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Mutation.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Mutation.java index 14123e4975..8ddf803098 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Mutation.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Mutation.java @@ -477,7 +477,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, familyName_); } if (!columnQualifier_.isEmpty()) { @@ -498,7 +498,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, familyName_); } if (!columnQualifier_.isEmpty()) { @@ -1497,7 +1497,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, familyName_); } if (!columnQualifier_.isEmpty()) { @@ -1515,7 +1515,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, familyName_); } if (!columnQualifier_.isEmpty()) { @@ -2446,7 +2446,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, familyName_); } unknownFields.writeTo(output); @@ -2458,7 +2458,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, familyName_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequest.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequest.java index 27745ee9f9..896d3c9f4b 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequest.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequest.java @@ -372,7 +372,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tableName_); } if (!rowKey_.isEmpty()) { @@ -381,7 +381,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < rules_.size(); i++) { output.writeMessage(3, rules_.get(i)); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, appProfileId_); } unknownFields.writeTo(output); @@ -393,7 +393,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tableName_); } if (!rowKey_.isEmpty()) { @@ -402,7 +402,7 @@ public int getSerializedSize() { for (int i = 0; i < rules_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, rules_.get(i)); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, appProfileId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRule.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRule.java index 347eda1b58..35fe453ea1 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRule.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRule.java @@ -342,7 +342,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, familyName_); } if (!columnQualifier_.isEmpty()) { @@ -363,7 +363,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getFamilyNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(familyName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, familyName_); } if (!columnQualifier_.isEmpty()) { diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsRequest.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsRequest.java index 0f14e8994c..5b1b58b6a0 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsRequest.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsRequest.java @@ -389,7 +389,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tableName_); } if (rows_ != null) { @@ -401,7 +401,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (rowsLimit_ != 0L) { output.writeInt64(4, rowsLimit_); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, appProfileId_); } unknownFields.writeTo(output); @@ -413,7 +413,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tableName_); } if (rows_ != null) { @@ -425,7 +425,7 @@ public int getSerializedSize() { if (rowsLimit_ != 0L) { size += com.google.protobuf.CodedOutputStream.computeInt64Size(4, rowsLimit_); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, appProfileId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysRequest.java b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysRequest.java index b6d2ab9cb5..5b56fccad4 100644 --- a/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysRequest.java +++ b/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysRequest.java @@ -241,10 +241,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tableName_); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, appProfileId_); } unknownFields.writeTo(output); @@ -256,10 +256,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getTableNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tableName_); } - if (!getAppProfileIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(appProfileId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, appProfileId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto b/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto index 32aaba21d0..94a8428429 100644 --- a/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto +++ b/proto-google-cloud-bigtable-v2/src/main/proto/google/bigtable/v2/bigtable.proto @@ -32,7 +32,7 @@ option java_package = "com.google.bigtable.v2"; option php_namespace = "Google\\Cloud\\Bigtable\\V2"; option ruby_package = "Google::Cloud::Bigtable::V2"; option (google.api.resource_definition) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" pattern: "projects/{project}/instances/{instance}/tables/{table}" }; @@ -129,7 +129,7 @@ message ReadRowsRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -236,7 +236,7 @@ message SampleRowKeysRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -271,7 +271,7 @@ message MutateRowRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -311,7 +311,7 @@ message MutateRowsRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -355,7 +355,7 @@ message CheckAndMutateRowRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -403,7 +403,7 @@ message ReadModifyWriteRowRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 845457558e..8cdaaf738e 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.1.4 + 2.2.0 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index da5a41ed7c..b3e2ae2a19 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,7 +28,7 @@ com.google.cloud google-cloud-bigtable - 2.2.0 + 2.3.0 diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index ae4d830860..45cbc5e59a 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -30,7 +30,7 @@ com.google.cloud libraries-bom - 23.1.0 + 24.0.0 pom import diff --git a/synth.metadata b/synth.metadata index e097c133f8..3c8ea6b612 100644 --- a/synth.metadata +++ b/synth.metadata @@ -4,22 +4,22 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/java-bigtable.git", - "sha": "8b120de58f0dfba3573ab696fb0e5375e917a00e" + "sha": "8e70884dca734934f5ed2cf004fce7c3a42357fd" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "5f761138c64054797b7e25164798d573ff4c1c62", - "internalRef": "391576441" + "sha": "2921f9fb3bfbd16f6b2da0104373e2b47a80a65e", + "internalRef": "408420890" } }, { "git": { "name": "synthtool", "remote": "https://github.com/googleapis/synthtool.git", - "sha": "a4be3384ccb92364795d981f2863f6986fcee620" + "sha": "42a3786737c17ece39924d7025f3be481812da53" } } ], @@ -77,6 +77,7 @@ ".kokoro/presubmit/clirr.cfg", ".kokoro/presubmit/common.cfg", ".kokoro/presubmit/dependencies.cfg", + ".kokoro/presubmit/graalvm-native.cfg", ".kokoro/presubmit/java11.cfg", ".kokoro/presubmit/java7.cfg", ".kokoro/presubmit/java8-osx.cfg", diff --git a/versions.txt b/versions.txt index 929c2bd424..86b369a82e 100644 --- a/versions.txt +++ b/versions.txt @@ -1,9 +1,9 @@ # Format: # module:released-version:current-version -google-cloud-bigtable:2.2.0:2.2.0 -grpc-google-cloud-bigtable-admin-v2:2.2.0:2.2.0 -grpc-google-cloud-bigtable-v2:2.2.0:2.2.0 -proto-google-cloud-bigtable-admin-v2:2.2.0:2.2.0 -proto-google-cloud-bigtable-v2:2.2.0:2.2.0 -google-cloud-bigtable-emulator:0.139.0:0.139.0 +google-cloud-bigtable:2.3.0:2.3.0 +grpc-google-cloud-bigtable-admin-v2:2.3.0:2.3.0 +grpc-google-cloud-bigtable-v2:2.3.0:2.3.0 +proto-google-cloud-bigtable-admin-v2:2.3.0:2.3.0 +proto-google-cloud-bigtable-v2:2.3.0:2.3.0 +google-cloud-bigtable-emulator:0.140.0:0.140.0