Code Monkey home page Code Monkey logo

java-bigtable's Introduction

Google Cloud Bigtable Client for Java

Java idiomatic client for Cloud Bigtable.

Maven Stability

Quickstart

If you are using Maven with BOM, add this to your pom.xml file:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>libraries-bom</artifactId>
      <version>26.25.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-bigtable</artifactId>
  </dependency>

If you are using Maven without the BOM, add this to your dependencies:

<dependency>
  <groupId>com.google.cloud</groupId>
  <artifactId>google-cloud-bigtable</artifactId>
  <version>2.39.0</version>
</dependency>

If you are using Gradle 5.x or later, add this to your dependencies:

implementation platform('com.google.cloud:libraries-bom:26.37.0')

implementation 'com.google.cloud:google-cloud-bigtable'

If you are using Gradle without BOM, add this to your dependencies:

implementation 'com.google.cloud:google-cloud-bigtable:2.39.0'

If you are using SBT, add this to your dependencies:

libraryDependencies += "com.google.cloud" % "google-cloud-bigtable" % "2.39.0"

Authentication

See the Authentication section in the base directory's README.

Authorization

The client application making API calls must be granted authorization scopes required for the desired Cloud Bigtable APIs, and the authenticated principal must have the IAM role(s) required to access GCP resources using the Cloud Bigtable API calls.

Getting Started

Prerequisites

You will need a Google Cloud Platform Console project with the Cloud Bigtable API enabled.

Follow these instructions to get your project set up. You will also need to set up the local development environment by installing the Google Cloud Command Line Interface and running the following commands in command line: gcloud auth login and gcloud config set project [YOUR PROJECT ID].

Installation and setup

You'll need to obtain the google-cloud-bigtable library. See the Quickstart section to add google-cloud-bigtable as a dependency in your code.

About Cloud Bigtable

Cloud Bigtable

See the Cloud Bigtable client library docs to learn how to use this Cloud Bigtable Client Library.

About Cloud Bigtable

Cloud Bigtable is Google's NoSQL Big Data database service. It's the same database that powers many core Google services, including Search, Analytics, Maps, and Gmail.

Be sure to activate the Cloud Bigtable API and the Cloud Bigtable Admin API under APIs & Services in the GCP Console to use Cloud Bigtable from your project.

See the Bigtable client library documentation (Admin API and Data API) to learn how to interact with Cloud Bigtable using this Client Library.

Concepts

Cloud Bigtable is composed of instances, clusters, nodes and tables.

Instances

Instances are containers for clusters.

Clusters

Clusters represent the actual Cloud Bigtable service. Each cluster belongs to a single Cloud Bigtable instance, and an instance can have up to 4 clusters. When your application sends requests to a Cloud Bigtable instance, those requests are actually handled by one of the clusters in the instance.

Nodes

Each cluster in a production instance has 3 or more nodes, which are compute resources that Cloud Bigtable uses to manage your data.

Tables

Tables contain the actual data and are replicated across all of the clusters in an instance.

Clients

The Cloud Bigtable API consists of:

Data API

Allows callers to persist and query data in a table. It's exposed by BigtableDataClient.

Admin API

Allows callers to create and manage instances, clusters, tables, and access permissions. This API is exposed by: BigtableInstanceAdminClient for Instance and Cluster level resources.

See BigtableTableAdminClient for table management.

See BigtableDataClient for the data client.

See BigtableInstanceAdminClient for the instance admin client.

See BigtableTableAdminClient for the table admin client.

Calling Cloud Bigtable

The Cloud Bigtable API is split into 3 parts: Data API, Instance Admin API and Table Admin API.

Here is a code snippet showing simple usage of the Data API. Add the following imports at the top of your file:

import com.google.cloud.bigtable.data.v2.BigtableDataClient;
import com.google.cloud.bigtable.data.v2.models.Query;
import com.google.cloud.bigtable.data.v2.models.Row;

Then, to make a query to Bigtable, use the following code:

// Instantiates a client
String projectId = "my-project";
String instanceId = "my-instance";
String tableId = "my-table";

// Create the client.
// Please note that creating the client is a very expensive operation
// and should only be done once and shared in an application.
BigtableDataClient dataClient = BigtableDataClient.create(projectId, instanceId);

try {
  // Query a table
  Query query = Query.create(tableId)
      .range("a", "z")
      .limit(26);

  for (Row row : dataClient.readRows(query)) {
    System.out.println(row.getKey());
  }
} finally {
  dataClient.close();
}

The Admin APIs are similar. Here is a code snippet showing how to create a table. Add the following imports at the top of your file:

import static com.google.cloud.bigtable.admin.v2.models.GCRules.GCRULES;
import com.google.cloud.bigtable.admin.v2.BigtableTableAdminClient;
import com.google.cloud.bigtable.admin.v2.models.CreateTableRequest;
import com.google.cloud.bigtable.admin.v2.models.Table;

Then, to create a table, use the following code:

String projectId = "my-instance";
String instanceId = "my-database";

BigtableTableAdminClient tableAdminClient = BigtableTableAdminClient
  .create(projectId, instanceId);

try {
  tableAdminClient.createTable(
      CreateTableRequest.of("my-table")
        .addFamily("my-family")
  );
} finally {
  tableAdminClient.close();
}

TIP: If you are experiencing version conflicts with gRPC, see Version Conflicts.

Client side metrics

Cloud Bigtable client supports publishing client side metrics to Cloud Monitoring under the bigtable.googleapis.com/client namespace.

This feature is available once you upgrade to version 2.16.0 and above. Follow the guide on https://cloud.google.com/bigtable/docs/client-side-metrics-setup to enable.

Since version 2.38.0, client side metrics is enabled by default. This feature collects useful telemetry data in the client and is recommended to use in conjunction with server-side metrics to get a complete, actionable view of your Bigtable performance. There is no additional cost to publish and view client-side metrics in Cloud Monitoring.

Opt-out client side metrics

You can opt-out client side metrics with the following settings:

BigtableDataSettings settings = BigtableDataSettings.newBuilder()
        .setProjectId("my-project")
        .setInstanceId("my-instance")
        .setMetricsProvider(NoopMetricsProvider.INSTANCE)
        .build();

Use a custom OpenTelemetry instance

If your application already has OpenTelemetry integration, you can register client side metrics on your OpenTelemetry instance. You can refer to CustomOpenTelemetryMetricsProvider on how to set it up.

Client request tracing: OpenCensus Tracing

Cloud Bigtable client supports OpenCensus Tracing, which gives insight into the client internals and aids in debugging production issues. By default, the functionality is disabled. For example to enable tracing using Google Stackdriver:

If you are using Maven, add this to your pom.xml file

<dependency>
  <groupId>io.opencensus</groupId>
  <artifactId>opencensus-impl</artifactId>
  <version>0.31.1</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <groupId>io.opencensus</groupId>
  <artifactId>opencensus-exporter-trace-stackdriver</artifactId>
  <version>0.31.1</version>
  <exclusions>
    <exclusion>
      <groupId>io.grpc</groupId>
      <artifactId>*</artifactId>
    </exclusion>
    <exclusion>
      <groupId>com.google.auth</groupId>
      <artifactId>*</artifactId>
    </exclusion>
  </exclusions>
</dependency>

If you are using Gradle, add this to your dependencies

compile 'io.opencensus:opencensus-impl:0.24.0'
compile 'io.opencensus:opencensus-exporter-trace-stackdriver:0.24.0'

If you are using SBT, add this to your dependencies

libraryDependencies += "io.opencensus" % "opencensus-impl" % "0.24.0"
libraryDependencies += "io.opencensus" % "opencensus-exporter-trace-stackdriver" % "0.24.0"

At the start of your application configure the exporter:

import io.opencensus.exporter.trace.stackdriver.StackdriverTraceConfiguration;
import io.opencensus.exporter.trace.stackdriver.StackdriverTraceExporter;

StackdriverTraceExporter.createAndRegister(
  StackdriverTraceConfiguration.builder()
      .setProjectId("YOUR_PROJECT_ID")
      .build());

You can view the traces on the Google Cloud Platform Console Trace page.

By default traces are sampled at a rate of about 1/10,000. You can configure a higher rate by updating the active tracing params:

import io.opencensus.trace.Tracing;
import io.opencensus.trace.samplers.Samplers;

Tracing.getTraceConfig().updateActiveTraceParams(
    Tracing.getTraceConfig().getActiveTraceParams().toBuilder()
        .setSampler(Samplers.probabilitySampler(0.01))
        .build()
);

Disable Bigtbale traces

If your application already has OpenCensus Tracing integration and you want to disable Bigtable traces, you can do the following:

public static class MySampler extends Sampler {

    private final Sampler childSampler;

    MySampler(Sampler child) {
        this.childSampler = child;
    }

    @Override
    public boolean shouldSample(@Nullable SpanContext parentContext,
                                @Nullable Boolean hasRemoteParent,
                                TraceId traceId,
                                SpanId spanId,
                                String name,
                                List<Span> parentLinks) {
        if (name.contains("Bigtable")) {
            return false;
        }
        return childSampler.shouldSample(parentContext, hasRemoteParent, traceId, spanId, name, parentLinks);
    }

    @Override
    public String getDescription() {
        return "from my sampler";
    }
}

And use this sampler in your trace config:

Tracing.getTraceConfig().updateActiveTraceParams(
        Tracing.getTraceConfig().getActiveTraceParams().toBuilder()
                .setSampler(new MySampler(Samplers.probabilitySampler(0.1)))
                .build()
);

Version Conflicts

google-cloud-bigtable depends on gRPC directly which may conflict with the versions brought in by other libraries, for example Apache Beam. This happens because internal dependencies between gRPC libraries are pinned to an exact version of grpc-core (see here). If both google-cloud-bigtable and the other library bring in two gRPC libraries that depend on the different versions of grpc-core, then dependency resolution will fail. The easiest way to fix this is to depend on the gRPC bom, which will force all the gRPC transitive libraries to use the same version.

Add the following to your project's pom.xml.

    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>io.grpc</groupId>
          <artifactId>grpc-bom</artifactId>
          <version>1.28.0</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
      </dependencies>
    </dependencyManagement>

Container Deployment

While deploying this client in Google Kubernetes Engine(GKE) with CoS. Please make sure to provide CPU configuration in your deployment file. With default configuration JVM detects only 1 CPU, which affects the number of channels with the client, resulting in performance repercussion.

Also, The number of grpc-nio-worker-ELG-1-# thread is same as number of CPUs. These are managed by a single grpc-default-executor-# thread, which is shared among multiple client instances.

For example:

appVersion: v1
...
spec:
  ...
  container:
    resources:
      requests:
        cpu: "1" # Here 1 represents 100% of single node CPUs whereas other than 1 represents the number of CPU it would use from a node.

see Assign CPU Resources to Containers for more information.

Samples

Samples are in the samples/ directory.

Sample Source Code Try it
Native Image Bigtable Sample source code Open in Cloud Shell
Authorized View Example source code Open in Cloud Shell
Configure Connection Pool source code Open in Cloud Shell
Filters source code Open in Cloud Shell
Hello World source code Open in Cloud Shell
Instance Admin Example source code Open in Cloud Shell
Key Salting source code Open in Cloud Shell
Quickstart source code Open in Cloud Shell
Reads source code Open in Cloud Shell
Table Admin Example source code Open in Cloud Shell
Write Batch source code Open in Cloud Shell
Write Conditionally source code Open in Cloud Shell
Write Increment source code Open in Cloud Shell
Write Simple source code Open in Cloud Shell
Batch Delete Example source code Open in Cloud Shell
Conditional Delete Example source code Open in Cloud Shell
Delete Column Family Example source code Open in Cloud Shell
Delete From Column Example source code Open in Cloud Shell
Delete From Column Family Example source code Open in Cloud Shell
Delete From Row Example source code Open in Cloud Shell
Delete Table Example source code Open in Cloud Shell
Drop Row Range Example source code Open in Cloud Shell

Troubleshooting

To get help, follow the instructions in the shared Troubleshooting document.

Supported Java Versions

Java 8 or above is required for using this client.

Google's Java client libraries, Google Cloud Client Libraries and Google Cloud API Libraries, follow the Oracle Java SE support roadmap (see the Oracle Java SE Product Releases section).

For new development

In general, new feature development occurs with support for the lowest Java LTS version covered by Oracle's Premier Support (which typically lasts 5 years from initial General Availability). If the minimum required JVM for a given library is changed, it is accompanied by a semver major release.

Java 11 and (in September 2021) Java 17 are the best choices for new development.

Keeping production systems current

Google tests its client libraries with all current LTS versions covered by Oracle's Extended Support (which typically lasts 8 years from initial General Availability).

Legacy support

Google's client libraries support legacy versions of Java runtimes with long term stable libraries that don't receive feature updates on a best efforts basis as it may not be possible to backport all patches.

Google provides updates on a best efforts basis to apps that continue to use Java 7, though apps might need to upgrade to current versions of the library that supports their JVM.

Where to find specific information

The latest versions and the supported Java versions are identified on the individual GitHub repository github.com/GoogleAPIs/java-SERVICENAME and on google-cloud-java.

Versioning

This library follows Semantic Versioning.

Contributing

Contributions to this library are always welcome and highly encouraged.

See CONTRIBUTING for more information how to get started.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. See Code of Conduct for more information.

License

Apache 2.0 - See LICENSE for more information.

CI Status

Java Version Status
Java 8 Kokoro CI
Java 8 OSX Kokoro CI
Java 8 Windows Kokoro CI
Java 11 Kokoro CI

Java is a registered trademark of Oracle and/or its affiliates.

java-bigtable's People

Contributors

alicejli avatar andreamlin avatar billyjacobson avatar chingor13 avatar dmitry-fa avatar eaball35 avatar elisheva-qlogic avatar garrettjonesgoogle avatar gcf-owl-bot[bot] avatar igorbernstein2 avatar jesselovelace avatar kolea2 avatar liubonan avatar liujiongxin avatar mpeddada1 avatar mutianf avatar neenu1995 avatar pongad avatar rahulkql avatar release-please[bot] avatar renovate-bot avatar rkaregar avatar steveniemitz avatar suztomo avatar tengzhonger avatar trollyxia avatar vam-google avatar weiranfang avatar yihanzhen avatar yoshi-automation avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

java-bigtable's Issues

Investigate ReadRowsRetry test failure

Extracted from #28 (comment)

[INFO] Running com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsRetryTest
Oct 23, 2019 11:24:30 AM io.grpc.internal.SerializingExecutor run
SEVERE: Exception while executing runnable io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed@340719af
java.lang.IllegalStateException: class com.google.cloud.bigtable.gaxx.reframing.ReframingResponseObserver received error after being closed [java.util.concurrent.CancellationException: User cancelled stream]
	at com.google.common.base.Preconditions.checkState(Preconditions.java:592)
	at com.google.api.gax.rpc.StateCheckingResponseObserver.onError(StateCheckingResponseObserver.java:84)
	at com.google.api.gax.tracing.TracedResponseObserver.onError(TracedResponseObserver.java:103)
	at com.google.api.gax.rpc.Watchdog$WatchdogStream.onErrorImpl(Watchdog.java:219)
	at com.google.api.gax.rpc.StateCheckingResponseObserver.onError(StateCheckingResponseObserver.java:86)
	at com.google.api.gax.grpc.ExceptionResponseObserver.onErrorImpl(ExceptionResponseObserver.java:84)
	at com.google.api.gax.rpc.StateCheckingResponseObserver.onError(StateCheckingResponseObserver.java:86)
	at com.google.api.gax.grpc.GrpcDirectStreamController$ResponseObserverAdapter.onClose(GrpcDirectStreamController.java:147)
	at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
	at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
	at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
	at io.grpc.internal.CensusStatsModule$StatsClientInterceptor$1$1.onClose(CensusStatsModule.java:700)
	at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
	at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
	at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
	at io.grpc.internal.CensusTracingModule$TracingClientInterceptor$1$1.onClose(CensusTracingModule.java:399)
	at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:510)
	at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:66)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:630)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$700(ClientCallImpl.java:518)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:692)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:681)
	at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
	at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

[ERROR] Tests run: 11, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.11 s <<< FAILURE! - in com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsRetryTest
[ERROR] multipleRetryTest(com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsRetryTest)  Time elapsed: 0.03 s  <<< ERROR!
java.lang.IllegalStateException: call was cancelled
	at com.google.common.base.Preconditions.checkState(Preconditions.java:511)
	at io.grpc.internal.ClientCallImpl.sendMessageInternal(ClientCallImpl.java:465)
	at io.grpc.internal.ClientCallImpl.sendMessage(ClientCallImpl.java:457)
	at io.grpc.ForwardingClientCall.sendMessage(ForwardingClientCall.java:37)
	at io.grpc.ForwardingClientCall.sendMessage(ForwardingClientCall.java:37)
	at com.google.api.gax.grpc.GrpcDirectStreamController.start(GrpcDirectStreamController.java:102)
	at com.google.api.gax.grpc.GrpcDirectServerStreamingCallable.call(GrpcDirectServerStreamingCallable.java:68)
	at com.google.api.gax.grpc.GrpcServerStreamingRequestParamCallable.call(GrpcServerStreamingRequestParamCallable.java:61)
	at com.google.api.gax.grpc.GrpcExceptionServerStreamingCallable.call(GrpcExceptionServerStreamingCallable.java:59)
	at com.google.api.gax.rpc.WatchdogServerStreamingCallable.call(WatchdogServerStreamingCallable.java:69)
	at com.google.api.gax.rpc.ServerStreamingCallable$1.call(ServerStreamingCallable.java:237)
	at com.google.api.gax.rpc.ServerStreamingCallable$1.call(ServerStreamingCallable.java:237)
	at com.google.api.gax.tracing.TracedServerStreamingCallable.call(TracedServerStreamingCallable.java:76)
	at com.google.api.gax.rpc.ServerStreamingCallable$1.call(ServerStreamingCallable.java:237)
	at com.google.cloud.bigtable.data.v2.stub.readrows.RowMergingCallable.call(RowMergingCallable.java:55)
	at com.google.cloud.bigtable.data.v2.stub.readrows.RowMergingCallable.call(RowMergingCallable.java:36)
	at com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsRetryCompletedCallable.call(ReadRowsRetryCompletedCallable.java:58)
	at com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsRetryCompletedCallable.call(ReadRowsRetryCompletedCallable.java:38)
	at com.google.api.gax.rpc.ServerStreamingAttemptCallable.call(ServerStreamingAttemptCallable.java:230)
	at com.google.api.gax.rpc.ServerStreamingAttemptCallable.call(ServerStreamingAttemptCallable.java:97)
	at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
	at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
	at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
	Suppressed: java.lang.RuntimeException: Asynchronous task failed
		at com.google.api.gax.rpc.ServerStreamIterator.hasNext(ServerStreamIterator.java:105)
		at com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsRetryTest.getResults(ReadRowsRetryTest.java:264)
		at com.google.cloud.bigtable.data.v2.stub.readrows.ReadRowsRetryTest.multipleRetryTest(ReadRowsRetryTest.java:138)
		at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
		at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
		at java.lang.reflect.Method.invoke(Method.java:498)
		at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
		at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
		at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
		at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
		at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
		at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
		at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48)
		at org.junit.rules.RunRules.evaluate(RunRules.java:20)
		at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
		at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
		at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
		at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
		at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
		at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
		at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
		at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
		at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
		at org.mockito.internal.runners.JUnit45AndHigherRunnerImpl.run(JUnit45AndHigherRunnerImpl.java:37)
		at org.mockito.runners.MockitoJUnitRunner.run(MockitoJUnitRunner.java:62)
		at org.junit.runners.Suite.runChild(Suite.java:128)
		at org.junit.runners.Suite.runChild(Suite.java:27)
		at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
		at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
		at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
		at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
		at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
		at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
		at org.apache.maven.surefire.junitcore.JUnitCore.run(JUnitCore.java:55)
		at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:137)
		at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:107)
		at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:83)
		at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:75)
		at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:158)
		at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384)
		at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345)
		at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126)
		at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418)

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

Cloning into 'working_repo'...
Switched to branch 'autosynth'
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.1/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.1/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/git/autosynth/autosynth/synth.py", line 256, in <module>
    main()
  File "/tmpfs/src/git/autosynth/autosynth/synth.py", line 196, in main
    last_synth_commit_hash = get_last_metadata_commit(args.metadata_path)
  File "/tmpfs/src/git/autosynth/autosynth/synth.py", line 149, in get_last_metadata_commit
    text=True,
  File "/home/kbuilder/.pyenv/versions/3.6.1/lib/python3.6/subprocess.py", line 403, in run
    with Popen(*popenargs, **kwargs) as process:
TypeError: __init__() got an unexpected keyword argument 'text'

Google internal developers can see the full log here.

Surface Clear Error Messages

When we have misspelt column names or permission issues, the error messages from Java Client library are not clear.

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

e/admin/v2/stub/GrpcBigtableTableAdminCallableFactory.java.
2020-08-06 02:35:35,627 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminStub.java.
2020-08-06 02:35:35,635 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminSettings.java.
2020-08-06 02:35:35,636 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStub.java.
2020-08-06 02:35:35,637 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStub.java.
2020-08-06 02:35:35,690 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java.
2020-08-06 02:35:35,778 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java.
2020-08-06 02:35:35,779 synthtool [INFO] > Running java formatter on 2 files
2020-08-06 02:35:39,175 synthtool [INFO] > Running java formatter on 139 files
2020-08-06 02:35:50,838 synthtool [INFO] > Running java formatter on 207 files
2020-08-06 02:35:59,414 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
.github/CODEOWNERS
.github/ISSUE_TEMPLATE/bug_report.md
.github/ISSUE_TEMPLATE/feature_request.md
.github/ISSUE_TEMPLATE/support_request.md
.github/PULL_REQUEST_TEMPLATE.md
.github/release-please.yml
.github/trusted-contribution.yml
.github/workflows/ci.yaml
.kokoro/build.bat
.kokoro/build.sh
.kokoro/coerce_logs.sh
.kokoro/common.cfg
.kokoro/common.sh
.kokoro/continuous/common.cfg
.kokoro/continuous/dependencies.cfg
.kokoro/continuous/integration.cfg
.kokoro/continuous/java11.cfg
.kokoro/continuous/java7.cfg
.kokoro/continuous/java8-osx.cfg
.kokoro/continuous/java8-win.cfg
.kokoro/continuous/java8.cfg
.kokoro/continuous/lint.cfg
.kokoro/continuous/propose_release.cfg
.kokoro/continuous/samples.cfg
.kokoro/dependencies.sh
.kokoro/linkage-monitor.sh
.kokoro/nightly/common.cfg
.kokoro/nightly/dependencies.cfg
.kokoro/nightly/integration.cfg
.kokoro/nightly/java11.cfg
.kokoro/nightly/java7.cfg
.kokoro/nightly/java8-osx.cfg
.kokoro/nightly/java8-win.cfg
.kokoro/nightly/java8.cfg
.kokoro/nightly/lint.cfg
.kokoro/nightly/samples.cfg
.kokoro/populate-secrets.sh
.kokoro/presubmit/clirr.cfg
.kokoro/presubmit/common.cfg
.kokoro/presubmit/dependencies.cfg
.kokoro/presubmit/integration.cfg
.kokoro/presubmit/java11.cfg
.kokoro/presubmit/java7.cfg
.kokoro/presubmit/java8-osx.cfg
.kokoro/presubmit/java8-win.cfg
.kokoro/presubmit/java8.cfg
.kokoro/presubmit/linkage-monitor.cfg
.kokoro/presubmit/lint.cfg
.kokoro/presubmit/samples.cfg
.kokoro/release/bump_snapshot.cfg
.kokoro/release/common.cfg
.kokoro/release/common.sh
.kokoro/release/drop.cfg
.kokoro/release/drop.sh
.kokoro/release/promote.cfg
.kokoro/release/promote.sh
.kokoro/release/publish_javadoc.cfg
.kokoro/release/publish_javadoc.sh
.kokoro/release/snapshot.cfg
.kokoro/release/snapshot.sh
.kokoro/release/stage.cfg
.kokoro/release/stage.sh
.kokoro/trampoline.sh
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
codecov.yaml
java.header
license-checks.xml
renovate.json
samples/install-without-bom/pom.xml
samples/pom.xml
samples/snapshot/pom.xml
samples/snippets/pom.xml
2020-08-06 02:35:59,578 synthtool [DEBUG] > existing pom file found (samples/pom.xml) - keeping the existing
2020-08-06 02:35:59,579 synthtool [DEBUG] > existing pom file found (samples/snippets/pom.xml) - keeping the existing
2020-08-06 02:35:59,581 synthtool [DEBUG] > existing pom file found (samples/install-without-bom/pom.xml) - keeping the existing
2020-08-06 02:35:59,582 synthtool [DEBUG] > existing pom file found (samples/snapshot/pom.xml) - keeping the existing
2020-08-06 02:36:02,680 synthtool [DEBUG] > Wrote metadata to synth.metadata.
2020-08-06 02:36:02,769 autosynth [INFO] > Changed files:
2020-08-06 02:36:02,769 autosynth [INFO] > M synth.metadata
2020-08-06 02:36:02,769 autosynth [DEBUG] > Running: git log 8f64979cee9b4857650fea6c41543995aab06371 -1 --no-decorate --pretty=%s
2020-08-06 02:36:02,774 autosynth [DEBUG] > Running: git log 8f64979cee9b4857650fea6c41543995aab06371 -1 --no-decorate --pretty=%b%n%nSource-Author: %an <%ae>%nSource-Date: %ad
2020-08-06 02:36:02,779 autosynth [DEBUG] > Running: git add -A
2020-08-06 02:36:02,787 autosynth [DEBUG] > Running: git status --porcelain
2020-08-06 02:36:02,796 autosynth [DEBUG] > Running: git commit -m docs: recommend installation via pip -e

Closes #691

Co-authored-by: Jeffrey Rennie <[email protected]>

Source-Author: Bu Sun Kim <[email protected]>
Source-Date: Wed Aug 5 15:23:24 2020 -0700
Source-Repo: googleapis/synthtool
Source-Sha: 8f64979cee9b4857650fea6c41543995aab06371
Source-Link: https://github.com/googleapis/synthtool/commit/8f64979cee9b4857650fea6c41543995aab06371
[autosynth-246 019dfc8] docs: recommend installation via pip -e
 1 file changed, 4 insertions(+), 4 deletions(-)
2020-08-06 02:36:02,807 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at 019dfc8 docs: recommend installation via pip -e
2020-08-06 02:36:02,815 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-08-06 02:36:02,824 autosynth [DEBUG] > Running: git diff HEAD..autosynth-246 -- . :(exclude)synth.metadata
2020-08-06 02:36:02,828 autosynth [DEBUG] > Running: git diff HEAD..autosynth-246 -- synth.metadata
2020-08-06 02:36:02,834 autosynth [DEBUG] > Running: git diff HEAD..autosynth-247 -- . :(exclude)synth.metadata
2020-08-06 02:36:02,839 autosynth [DEBUG] > Running: git diff HEAD autosynth-247
2020-08-06 02:36:02,843 autosynth [DEBUG] > Running: git apply /tmpfs/tmp/tmp0dpwx4v4/autosynth-247.patch
2020-08-06 02:36:02,848 autosynth [DEBUG] > Running: git add -A
2020-08-06 02:36:02,855 autosynth [DEBUG] > Running: git status --porcelain
2020-08-06 02:36:02,865 autosynth [DEBUG] > Running: git commit -m cleanup: removes unused kokoro config files

* cleanup: removes unused kokoro config files

Removes unused kokoro files from the java library template. We have
stopped running some of these due to Github quota issues.

* fix:reverts back samples.cfg files

The files presubmit/samples.cfg and nightly/samples.cfg should remain in
the java template repository.

Co-authored-by: Jeffrey Rennie <[email protected]>

Source-Author: Thiago Nunes <[email protected]>
Source-Date: Thu Aug 6 09:48:58 2020 +1000
Source-Repo: googleapis/synthtool
Source-Sha: 4530cc6ff080ef8aca258c1ec92c4db10a1bbfb4
Source-Link: https://github.com/googleapis/synthtool/commit/4530cc6ff080ef8aca258c1ec92c4db10a1bbfb4
[autosynth 4d45ff1] cleanup: removes unused kokoro config files
 12 files changed, 4 insertions(+), 176 deletions(-)
 delete mode 100644 .kokoro/continuous/dependencies.cfg
 delete mode 100644 .kokoro/continuous/integration.cfg
 delete mode 100644 .kokoro/continuous/java11.cfg
 delete mode 100644 .kokoro/continuous/java7.cfg
 delete mode 100644 .kokoro/continuous/java8-osx.cfg
 delete mode 100644 .kokoro/continuous/java8-win.cfg
 delete mode 100644 .kokoro/continuous/lint.cfg
 delete mode 100644 .kokoro/continuous/propose_release.cfg
 delete mode 100644 .kokoro/continuous/samples.cfg
 delete mode 100644 .kokoro/nightly/dependencies.cfg
 delete mode 100644 .kokoro/nightly/lint.cfg
2020-08-06 02:36:02,875 autosynth [DEBUG] > Running: git log -1 --no-decorate --format=%B
2020-08-06 02:36:02,880 autosynth [DEBUG] > Running: git push --force origin autosynth
remote: 
remote: Create a pull request for 'autosynth' on GitHub by visiting:        
remote:      https://github.com/googleapis/java-bigtable/pull/new/autosynth        
remote: 
To https://github.com/googleapis/java-bigtable.git
 * [new branch]      autosynth -> autosynth
2020-08-06 02:36:07,231 autosynth [DEBUG] > Running: git log -1 --pretty=%b
2020-08-06 02:36:09,935 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 690, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 539, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 670, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 400, in synthesize_loop
    synthesize_inner_loop(fork, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 444, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Edited/Blocked

These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.

  • chore(deps): update dependency com.google.cloud:libraries-bom to v26.38.0

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Ignored or Blocked

These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

Detected dependencies

github-actions
.github/workflows/approve-readme.yaml
  • actions/github-script v6
.github/workflows/ci.yaml
  • actions/checkout v3
  • actions/setup-java v3
  • actions/checkout v3
  • actions/setup-java v3
  • actions/setup-java v3
  • actions/checkout v3
  • actions/setup-java v3
  • actions/checkout v3
  • actions/setup-java v3
  • actions/checkout v3
  • actions/setup-java v3
  • actions/checkout v3
  • actions/setup-java v3
  • actions/checkout v3
  • actions/setup-java v3
.github/workflows/conformance.yaml
  • actions/checkout v4
  • actions/checkout v4
  • actions/setup-java v4
  • actions/setup-go v5
.github/workflows/renovate_config_check.yaml
  • actions/checkout v4
  • actions/setup-node v3
  • ubuntu 22.04
.github/workflows/samples.yaml
  • actions/checkout v3
  • actions/setup-java v3
.github/workflows/unmanaged_dependency_check.yaml
  • actions/checkout v4
  • actions/setup-java v4
maven
google-cloud-bigtable-bom/pom.xml
  • com.google.cloud:sdk-platform-java-config 3.29.0
  • com.google.cloud:google-cloud-bigtable 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-emulator 0.176.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-emulator-core 0.176.1-SNAPSHOT
  • com.google.api.grpc:grpc-google-cloud-bigtable-admin-v2 2.39.1-SNAPSHOT
  • com.google.api.grpc:grpc-google-cloud-bigtable-v2 2.39.1-SNAPSHOT
  • com.google.api.grpc:proto-google-cloud-bigtable-admin-v2 2.39.1-SNAPSHOT
  • com.google.api.grpc:proto-google-cloud-bigtable-v2 2.39.1-SNAPSHOT
google-cloud-bigtable-deps-bom/pom.xml
  • com.google.cloud:sdk-platform-java-config 3.29.0
  • com.google.cloud:gapic-libraries-bom 1.36.0
  • io.opencensus:opencensus-contrib-resource-util 0.31.1
google-cloud-bigtable-emulator-core/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-gcloud-maven-plugin 0.1.5
google-cloud-bigtable-emulator/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-gcloud-maven-plugin 0.1.5
  • com.google.cloud:google-cloud-bigtable-deps-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-emulator-core 0.176.1-SNAPSHOT
google-cloud-bigtable/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-deps-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-bom 2.39.1-SNAPSHOT
  • kr.motd.maven:os-maven-plugin 1.7.1
  • org.xolstice.maven.plugins:protobuf-maven-plugin 0.6.1
  • org.codehaus.mojo:build-helper-maven-plugin 3.5.0
  • org.apache.maven.plugins:maven-enforcer-plugin 3.4.1
  • org.codehaus.mojo:extra-enforcer-rules 1.8.0
  • org.apache.maven.shared:maven-dependency-tree 3.2.1
grpc-google-cloud-bigtable-admin-v2/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-deps-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-bom 2.39.1-SNAPSHOT
grpc-google-cloud-bigtable-v2/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-deps-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-bom 2.39.1-SNAPSHOT
pom.xml
  • com.google.cloud:sdk-platform-java-config 3.29.0
  • com.google.api.grpc:proto-google-cloud-bigtable-v2 2.39.1-SNAPSHOT
  • com.google.api.grpc:proto-google-cloud-bigtable-admin-v2 2.39.1-SNAPSHOT
  • com.google.api.grpc:grpc-google-cloud-bigtable-v2 2.39.1-SNAPSHOT
  • com.google.api.grpc:grpc-google-cloud-bigtable-admin-v2 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-conformance-tests 0.3.7
  • com.google.truth:truth 1.4.2
  • com.google.truth.extensions:truth-proto-extension 1.4.2
  • junit:junit 4.13.2
  • org.mockito:mockito-core 4.11.0
  • org.apache.maven.plugins:maven-shade-plugin 3.3.0
proto-google-cloud-bigtable-admin-v2/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-deps-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-bom 2.39.1-SNAPSHOT
proto-google-cloud-bigtable-v2/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-deps-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-bom 2.39.1-SNAPSHOT
samples/install-without-bom/pom.xml
  • com.google.cloud.samples:shared-configuration 1.2.0
  • com.google.cloud:google-cloud-bigtable 2.39.0
  • junit:junit 4.13.2
  • com.google.truth:truth 1.4.2
  • org.codehaus.mojo:build-helper-maven-plugin 3.5.0
samples/native-image-sample/pom.xml
  • com.google.cloud.samples:shared-configuration 1.2.0
  • com.google.cloud:libraries-bom 26.25.0
  • junit:junit 4.13.2
  • com.google.truth:truth 1.4.2
  • org.junit.vintage:junit-vintage-engine 5.10.2
  • org.graalvm.buildtools:junit-platform-native 0.10.1
  • org.graalvm.buildtools:native-maven-plugin 0.10.1
samples/pom.xml
  • com.google.cloud.samples:shared-configuration 1.2.0
  • org.apache.maven.plugins:maven-deploy-plugin 3.1.1
  • org.sonatype.plugins:nexus-staging-maven-plugin 1.6.13
samples/snapshot/pom.xml
  • com.google.cloud.samples:shared-configuration 1.2.0
  • com.google.cloud:google-cloud-bigtable 2.39.1-SNAPSHOT
  • junit:junit 4.13.2
  • com.google.truth:truth 1.4.2
  • org.codehaus.mojo:build-helper-maven-plugin 3.5.0
samples/snippets/pom.xml
  • com.google.cloud.samples:shared-configuration 1.2.0
  • com.google.cloud:libraries-bom 26.37.0
  • junit:junit 4.13.2
  • com.google.truth:truth 1.4.2
test-proxy/pom.xml
  • com.google.cloud:google-cloud-bigtable-parent 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-bom 2.39.1-SNAPSHOT
  • com.google.cloud:google-cloud-bigtable-deps-bom 2.39.1-SNAPSHOT
  • kr.motd.maven:os-maven-plugin 1.7.1
  • org.xolstice.maven.plugins:protobuf-maven-plugin 0.6.1
regex
google-cloud-bigtable/pom.xml
  • io.grpc:protoc-gen-grpc-java 1.61.1
google-cloud-bigtable/pom.xml
  • com.google.protobuf:protoc 3.25.3
.kokoro/presubmit/graalvm-native-17.cfg
  • com.google.cloud:sdk-platform-java-config 3.29.0
.kokoro/presubmit/graalvm-native.cfg
  • com.google.cloud:sdk-platform-java-config 3.29.0
.github/workflows/unmanaged_dependency_check.yaml
  • com.google.cloud:sdk-platform-java-config 3.29.0

  • Check this box to trigger a request for Renovate to run again on this repository

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

Cloning into 'working_repo'...
Switched to a new branch 'autosynth'
Cloning into '/tmpfs/tmp/tmp4pdrugho/googleapis'...
Cloning into '/tmpfs/tmp/tmp4pdrugho/synthtool'...
Switched to branch 'autosynth-self'
Note: checking out '67cbcf9990a197ba249fb64975a715c55c31b104'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 67cbcf9 chore(deps): update dependency com.google.cloud:libraries-bom to v5.3.0 (#273)
Note: checking out '275fbcce2c900278d487c33293a3c7e1fbcd3a34'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 275fbcce feat: pubsub/v1 add an experimental filter field to Subscription
Note: checking out '19465d3ec5e5acdb01521d8f3bddd311bcbee28d'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 19465d3 build: use codecov's action, now that it's authless (#499)
Switched to a new branch 'autosynth-self-2'
2020-04-30 13:58:14 [INFO] Running synthtool
2020-04-30 13:58:14 [INFO] ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 183, in _run_module_as_main
    mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 142, in _get_module_details
    return _get_module_details(pkg_main_name, error)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 109, in _get_module_details
    __import__(pkg_name)
  File "/tmpfs/src/github/synthtool/synthtool/__init__.py", line 21, in <module>
    from synthtool import update_check
  File "/tmpfs/src/github/synthtool/synthtool/update_check.py", line 19, in <module>
    import packaging.version
ModuleNotFoundError: No module named 'packaging'
2020-04-30 13:58:14 [ERROR] Synthesis failed
HEAD is now at 67cbcf9 chore(deps): update dependency com.google.cloud:libraries-bom to v5.3.0 (#273)
Switched to branch 'autosynth-self'
Note: checking out '67cbcf9990a197ba249fb64975a715c55c31b104'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 67cbcf9 chore(deps): update dependency com.google.cloud:libraries-bom to v5.3.0 (#273)
Previous HEAD position was 275fbcce feat: pubsub/v1 add an experimental filter field to Subscription
HEAD is now at 7e1c7603 Add an OAuth scope annotation in build_service proto file
Previous HEAD position was 19465d3 build: use codecov's action, now that it's authless (#499)
HEAD is now at 6b685a2 fix: synthtool path (#515)
Switched to a new branch 'autosynth-196'
2020-04-30 13:58:14 [INFO] Running synthtool
2020-04-30 13:58:14 [INFO] ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 183, in _run_module_as_main
    mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 142, in _get_module_details
    return _get_module_details(pkg_main_name, error)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 109, in _get_module_details
    __import__(pkg_name)
  File "/tmpfs/src/github/synthtool/synthtool/__init__.py", line 21, in <module>
    from synthtool import update_check
  File "/tmpfs/src/github/synthtool/synthtool/update_check.py", line 19, in <module>
    import packaging.version
ModuleNotFoundError: No module named 'packaging'
2020-04-30 13:58:14 [ERROR] Synthesis failed
HEAD is now at 67cbcf9 chore(deps): update dependency com.google.cloud:libraries-bom to v5.3.0 (#273)
Switched to branch 'autosynth'
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 576, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 457, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 566, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 352, in synthesize_loop
    synthesize_inner_loop(toolbox, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 362, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 259, in synthesize_version_in_new_branch
    synthesizer.synthesize(self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 115, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Bigtable TimestampRangeFilter generates invalid bounds

The bigtable client allows queries to specify that rows be filtered by their insert timestamp. The filter supports bounded and unbounded ranges, with open or closed endpoints.

Unfortunately, the implementation of the query builder contains logic that causes the client to generate queries that Bigtable rejects.

Here is where the client translates its user-specified timestamp range filters into more generic filter RowFilter that are ultimately translated into protobufs for submission to Bigtable.

You can see that, for open start bounds or closed end bounds, the client adds 1 microsecond to the bound, presumably in an attempt to deal with the fact that Bigtable's TimestampRange filter parameter does not support exclusive (open) lower bounds or inclusive (closed) upper bounds.

However, Bigtable also does not accept timestamp range filters with precision below 1 millisecond. Presumably this is because the minimum granularity of Bigtable timestamps is 1 ms, as suggested here in the Bigtable documentation, although the restriction on the filter parameters does not appear to be definitively stated anywhere.

The consequence of this is that Bigtable rejects any queries generated by the client using open start bounds or closed end bounds.

I believe that a valid fix for this would be to add one millisecond rather than one microsecond to each of the places where these bounds are generated. However, if Bigtable ever does add microsecond support, then this would become invalid. Perhaps a more thorough solution would be to query the Bigtable Admin API on the creation of the client, to confirm that the timestamp granularity is set to milliseconds?

Or alternatively, perhaps the client should simply throw an exception to reject the specification of open start bounds or closed end bounds?

Cloud Bigtable integration tests should run in AppEngine

To ensure that the Bigtable client works in AppEngine, there should be a harness that pushes the integration tests into an AppEngine application and then runs the tests from there.

The harness would probably be a custom runner that

  • enumerates the integration tests
  • packages them up and deploys them into an app engine app
  • returns the list as local stubs that would invoke the test remotely

BigTable: DEADLINE_EXCEEDED: Insufficient deadline for DropRowRange. Please try again with a longer request deadline.

Environment details

  1. Specify the API at the beginning of the title.
  2. OS type and version: osx
  3. Java version: 11
  4. bigtable version(s): 1.12.0

Steps to reproduce

Just call admin.dropRowRange( TAG_DEFINITION_TABLE_NAME, ByteString.copyFromUtf8(id.toString()));

Code example

final BigtableTableAdminSettings.Builder builder =
          BigtableTableAdminSettings.newBuilder()
              .setCredentialsProvider(credentials)
              .setProjectId(projectId)
              .setInstanceId(instanceId);
      builder
          .stubSettings()
          .dropRowRangeSettings()
          .setRetrySettings(
              RetrySettings.newBuilder()
                  .setMaxAttempts(5)
                  .setMaxRetryDelay(ofSeconds(10))
                  .setTotalTimeout(ofHours(98))
                  .setInitialRpcTimeout(ofHours(99))
                  .setMaxRpcTimeout(ofHours(100))
                  .build())
          .build();

      final BigtableTableAdminClient admin = BigtableTableAdminClient.create(builder.build());

Stack trace

14:46:57.089 [grpc-server-worker-3] WARN  c.s.c.i.TagRepositoryBigTable - failed to delete tag: 09543fe6-e516-4151-a323-12287130b4e8
com.google.api.gax.rpc.DeadlineExceededException: io.grpc.StatusRuntimeException: DEADLINE_EXCEEDED: Insufficient deadline for DropRowRange. Please try again with a longer request deadline.
	at com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:51)
	at com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:72)
	at com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:60)
	at com.google.api.gax.grpc.GrpcExceptionCallable$ExceptionTransformingFuture.onFailure(GrpcExceptionCallable.java:97)
	at com.google.api.core.ApiFutures$1.onFailure(ApiFutures.java:68)
	at com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1015)
	at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:30)
	at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1137)
	at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:957)
	at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:748)
	at io.grpc.stub.ClientCalls$GrpcFuture.setException(ClientCalls.java:515)
	at io.grpc.stub.ClientCalls$UnaryStreamToFuture.onClose(ClientCalls.java:490)
	at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
	at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
	at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
	at io.grpc.internal.CensusStatsModule$StatsClientInterceptor$1$1.onClose(CensusStatsModule.java:700)
	at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
	at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
	at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
	at io.grpc.internal.CensusTracingModule$TracingClientInterceptor$1$1.onClose(CensusTracingModule.java:399)
	at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:510)
	at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:66)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:630)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$700(ClientCallImpl.java:518)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:692)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:681)
	at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
	at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)

Any additional information below

By setting some break points looks like the stub settings are not propagated to the deadline field of the dropRowRangeCallable's call options. It's always null.

Following these steps guarantees the quickest resolution possible.

Thanks!

Add bulk read api

bigtable-client-core currently has a feature to use ReadRows for bulk reads. I think we can easily port over this functionality using the Batcher api similar to how bulk mutations work:

  • Add Batcher<ByteString, Row> newBulkReadBatcher(tableId, filter) to the client and stub surface
    • Have it return a instance BatcherImpl instance that wraps the ReadRowsCallable
  • Add a BulkReadRowsRequestBuilder that wraps a Query and adds ByteString row keys
  • Add a ReadRowsBatchingDescriptor that can map results back to entry futures
  • Expose batching read settings as bulkReadRowsSettings on the stub

Things to consider:

  • Need to be careful with tracing to avoid creating confusing spans
  • Need to make sure to expose the ability to set a filter
  • Need to be careful with UnaryCallableSettings to make sure that bulk & streaming settings dont conflict

Update java docs to clarify thread safety of the client

The docs should make it clear that the client instances can be safely shared across threads. The methods that return non-threadsafe instances should be prominently documented as such on both the creator method and the class returned.

For example, BigtableDataClient#newBulkMutationBatcher() can return a Batcher instance that cannot be shared across threads. The docs for newBulkMutationBatcher() should explicitly state that the returned Batcher instance is not threadsafe, so cannot be used by more than one thread. And in addition, the Batcher interface should also explicitly state in its javadocs that the interface can only be used by a single thread.

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminSettings.java.
2020-08-18 16:21:12,256 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminCallableFactory.java.
2020-08-18 16:21:12,258 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminStub.java.
2020-08-18 16:21:12,266 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminSettings.java.
2020-08-18 16:21:12,267 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStub.java.
2020-08-18 16:21:12,268 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStub.java.
2020-08-18 16:21:12,318 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java.
2020-08-18 16:21:12,406 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java.
2020-08-18 16:21:12,407 synthtool [INFO] > Running java formatter on 2 files
2020-08-18 16:21:15,570 synthtool [INFO] > Running java formatter on 139 files
2020-08-18 16:21:26,838 synthtool [INFO] > Running java formatter on 207 files
2020-08-18 16:21:34,970 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
.github/CODEOWNERS
.github/ISSUE_TEMPLATE/bug_report.md
.github/ISSUE_TEMPLATE/feature_request.md
.github/ISSUE_TEMPLATE/support_request.md
.github/PULL_REQUEST_TEMPLATE.md
.github/release-please.yml
.github/trusted-contribution.yml
.github/workflows/ci.yaml
.github/workflows/samples.yaml
.kokoro/build.bat
.kokoro/build.sh
.kokoro/coerce_logs.sh
.kokoro/common.cfg
.kokoro/common.sh
.kokoro/continuous/common.cfg
.kokoro/continuous/java8.cfg
.kokoro/dependencies.sh
.kokoro/linkage-monitor.sh
.kokoro/nightly/common.cfg
.kokoro/nightly/integration.cfg
.kokoro/nightly/java11.cfg
.kokoro/nightly/java7.cfg
.kokoro/nightly/java8-osx.cfg
.kokoro/nightly/java8-win.cfg
.kokoro/nightly/java8.cfg
.kokoro/nightly/samples.cfg
.kokoro/populate-secrets.sh
.kokoro/presubmit/clirr.cfg
.kokoro/presubmit/common.cfg
.kokoro/presubmit/dependencies.cfg
.kokoro/presubmit/integration.cfg
.kokoro/presubmit/java11.cfg
.kokoro/presubmit/java7.cfg
.kokoro/presubmit/java8-osx.cfg
.kokoro/presubmit/java8-win.cfg
.kokoro/presubmit/java8.cfg
.kokoro/presubmit/linkage-monitor.cfg
.kokoro/presubmit/lint.cfg
.kokoro/presubmit/samples.cfg
.kokoro/release/bump_snapshot.cfg
.kokoro/release/common.cfg
.kokoro/release/common.sh
.kokoro/release/drop.cfg
.kokoro/release/drop.sh
.kokoro/release/promote.cfg
.kokoro/release/promote.sh
.kokoro/release/publish_javadoc.cfg
.kokoro/release/publish_javadoc.sh
.kokoro/release/snapshot.cfg
.kokoro/release/snapshot.sh
.kokoro/release/stage.cfg
.kokoro/release/stage.sh
.kokoro/trampoline.sh
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
codecov.yaml
java.header
license-checks.xml
renovate.json
samples/install-without-bom/pom.xml
samples/pom.xml
samples/snapshot/pom.xml
samples/snippets/pom.xml
2020-08-18 16:21:35,196 synthtool [DEBUG] > existing pom file found (samples/pom.xml) - keeping the existing
2020-08-18 16:21:35,198 synthtool [DEBUG] > existing pom file found (samples/install-without-bom/pom.xml) - keeping the existing
2020-08-18 16:21:35,199 synthtool [DEBUG] > existing pom file found (samples/snippets/pom.xml) - keeping the existing
2020-08-18 16:21:35,201 synthtool [DEBUG] > existing pom file found (samples/snapshot/pom.xml) - keeping the existing
2020-08-18 16:21:38,222 synthtool [INFO] > Leaving obsolete file .kokoro/nightly/samples.cfg because it matched excluded pattern .kokoro/nightly/samples.cfg during copy.
2020-08-18 16:21:38,223 synthtool [INFO] > Leaving obsolete file .kokoro/presubmit/samples.cfg because it matched excluded pattern .kokoro/presubmit/samples.cfg during copy.
2020-08-18 16:21:38,225 synthtool [DEBUG] > Wrote metadata to synth.metadata.
2020-08-18 16:21:38,304 autosynth [INFO] > Changed files:
2020-08-18 16:21:38,304 autosynth [INFO] > M synth.metadata
?? .github/workflows/samples.yaml
2020-08-18 16:21:38,304 autosynth [DEBUG] > Running: git log c3caf0704f25a0c365f1c315e804a30b87c62a75 -1 --no-decorate --pretty=%s
2020-08-18 16:21:38,308 autosynth [DEBUG] > Running: git log c3caf0704f25a0c365f1c315e804a30b87c62a75 -1 --no-decorate --pretty=%b%n%nSource-Author: %an <%ae>%nSource-Date: %ad
2020-08-18 16:21:38,312 autosynth [DEBUG] > Running: git add -A
2020-08-18 16:21:38,320 autosynth [DEBUG] > Running: git status --porcelain
2020-08-18 16:21:38,328 autosynth [DEBUG] > Running: git commit -m chore(java_templates): add lint/static analysis presubmit checks for samples

* chore(java_templates): add lint/static analysis presubmit checks for samples

* chore: fix trailing whitespace

Source-Author: Jeff Ching <[email protected]>
Source-Date: Mon Aug 17 14:29:16 2020 -0700
Source-Repo: googleapis/synthtool
Source-Sha: c3caf0704f25a0c365f1c315e804a30b87c62a75
Source-Link: https://github.com/googleapis/synthtool/commit/c3caf0704f25a0c365f1c315e804a30b87c62a75
[autosynth-39 ef28a25] chore(java_templates): add lint/static analysis presubmit checks for samples
 2 files changed, 29 insertions(+), 6 deletions(-)
 create mode 100644 .github/workflows/samples.yaml
2020-08-18 16:21:38,337 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at ef28a25 chore(java_templates): add lint/static analysis presubmit checks for samples
2020-08-18 16:21:38,344 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-08-18 16:21:38,350 autosynth [DEBUG] > Running: git diff HEAD..autosynth-39 -- . :(exclude)synth.metadata
2020-08-18 16:21:38,354 autosynth [DEBUG] > Running: git diff HEAD autosynth-39
2020-08-18 16:21:38,359 autosynth [DEBUG] > Running: git apply /tmpfs/tmp/tmpoxjs7ymv/autosynth-39.patch
2020-08-18 16:21:38,362 autosynth [DEBUG] > Running: git add -A
2020-08-18 16:21:38,369 autosynth [DEBUG] > Running: git status --porcelain
2020-08-18 16:21:38,378 autosynth [DEBUG] > Running: git commit -m chore(java_templates): add lint/static analysis presubmit checks for samples

* chore(java_templates): add lint/static analysis presubmit checks for samples

* chore: fix trailing whitespace

Source-Author: Jeff Ching <[email protected]>
Source-Date: Mon Aug 17 14:29:16 2020 -0700
Source-Repo: googleapis/synthtool
Source-Sha: c3caf0704f25a0c365f1c315e804a30b87c62a75
Source-Link: https://github.com/googleapis/synthtool/commit/c3caf0704f25a0c365f1c315e804a30b87c62a75
[autosynth ef28a25] chore(java_templates): add lint/static analysis presubmit checks for samples
 2 files changed, 29 insertions(+), 6 deletions(-)
 create mode 100644 .github/workflows/samples.yaml
2020-08-18 16:21:38,387 autosynth [DEBUG] > Running: git diff HEAD..autosynth-40 -- . :(exclude)synth.metadata
2020-08-18 16:21:38,391 autosynth [DEBUG] > Running: git diff HEAD..autosynth-40 -- synth.metadata
2020-08-18 16:21:38,396 autosynth [DEBUG] > Running: git diff autosynth-40..autosynth-46 -- . :(exclude)synth.metadata
2020-08-18 16:21:38,400 autosynth [DEBUG] > Running: git diff autosynth-40..autosynth-46 -- synth.metadata
2020-08-18 16:21:38,404 autosynth [DEBUG] > Running: git log -1 --no-decorate --format=%B
2020-08-18 16:21:38,407 autosynth [DEBUG] > Running: git push --force origin autosynth
remote: 
remote: Create a pull request for 'autosynth' on GitHub by visiting:        
remote:      https://github.com/googleapis/java-bigtable/pull/new/autosynth        
remote: 
To https://github.com/googleapis/java-bigtable.git
 * [new branch]      autosynth -> autosynth
2020-08-18 16:21:41,966 autosynth [DEBUG] > Running: git log -1 --pretty=%b
2020-08-18 16:21:44,052 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 690, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 539, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 670, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 400, in synthesize_loop
    synthesize_inner_loop(fork, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 444, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Expose new API for ReadRows in EnhanceBigtableStub

What the problem is.

While performing readRows, the abstraction layer(ServerStreamingCallable<Query, RowT>) introduced by this library prevents user to create requests to target the table using an absolute resource name(Custom app-profile-id).

What you want to happen.

It would be helpful if we introduce these new API in EnhanceBigtableStub.java to expose ServerStreamingCallable<ReadRowsRequest, RowT>:

<RowT> ServerStreamingCallable<ReadRowsRequest, RowT> createReadRowsRawCallable(RowAdapter adapter) {
  return createReadRowsBaseCallable(adapter).withDefaultContext(..);
}

<RowT> ServerStreamingCallable<ReadRowsRequest, RowT> createReadRowsBaseCallable(RowAdapter adapter) {
  //... same impl as now, except without the UserFacingCallable
}

Related to an internal ticket.

CheckAndMutateRow doesn't behave as expected

Environment details

API : BigTable Java client
version: 1.6.0 (compile "com.google.cloud:google-cloud-bigtable:1.6.0)
java version: 1.8

Issue

checkAndMutateRow doesn't work atomically if read is executed before checkAndMutateRow

Steps to reproduce

  1. Create a table test_table with column family : product, meta_data
  2. Push the test data to the table using cbt cbt set test_table id1 meta_data:master_version=3 product:id1="{\"productId\":\"p1\",\"updated_at\":\"2011-12-05T10:15:30\"}"
  3. Run the below snippet
  4. Update the master_version of the record with row key id1 when Thread is in sleep from cbt client
  5. The row is getting mutated even the value of master_version in table is no more equal to the value passed in filter.
  6. It works fine in case read operation is not executed before checkAndMutateRow

Code example

    Row productRow = bigtableDataReaderClient.readRow("test_table", "id1");
    ConditionalRowMutation condition = ConditionalRowMutation.create("test_table", "id1");
    Mutation mutation = Mutation.create();

    try {
      mutation.setCell("product", "id1", "test");
      RowCell productCell = productRow.getCells("product").get(0);
      
      long masterVersion = Long
          .parseLong(productRow.getCells("meta_data").get(0).getValue().toStringUtf8());
        Thread.sleep(10000);
          mutation.setCell("meta_data", "master_version", String.valueOf(masterVersion + 1));

          condition = condition.condition(
            Filters.FILTERS.chain()
            .filter(FILTERS.family().exactMatch("meta_data"))
            .filter(FILTERS.qualifier().exactMatch("master_version"))
            .filter(FILTERS.value().regex(String.valueOf(masterVersion))))
            .then(mutation);

          System.out.println(bigtableDataWiterClient.checkAndMutateRow(condition));
    } catch (Exception e) {
      e.printStackTrace();
    }

External references such as API reference guides

Any additional information below

It works fine if read is not invoked and value of masterVersion is hard bound

Is there any best practise on choosing connection pool-size?

Hi there, is there any best practise on choosing connection pool-size?

We have a service deployed on K8s as a pod and the load on it shift from 200 req/sec to 20 req/sec, during different time of a day. And each request will generate 2 simultaneously Bigtable read query. And each read query, seeing from the service side, takes around 15ms to 25ms waiting time (or called read latency )
image

So do you think we'd better to specify the connection pool size and is there some way to calculate a best value? I saw some method mentioned here https://jobs.zalando.com/en/tech/blog/how-to-set-an-ideal-thread-pool-size/?gh_src=4n3gxh1, do you think it makes sense to use them? I wonder what is the default channel size if we don't set them here? (The k8s pod has 2 CPU as requests, and the k8s cluster is a 32 core virtual machine.)

What we've noticed that, it seems we have some latency issues when trying to set the pool size to 4 or 8, and while setting it to 32 seems much better overall latency graph (we haven't tried 16 yet). We previously had to set this pool size on a low value as we noticed that when the load was low, the latency was very high and we had to introduce some artificial load to help warm those channels constantly and if the pool size is large then the warming effect would not work well when warmed with not a very high load (something like 10 to 30 reqs per sec).

BTW, the way we setup the client setting is like this:

final BigtableDataSettings.Builder settingsBuilder =
          BigtableDataSettings.newBuilder()
              .setProjectId("promotions-targeting")
              .setInstanceId("feature-store")
              .setAppProfileId("default")
              .setRefreshingChannel(true);

      settingsBuilder
          .stubSettings()
          .setTransportChannelProvider(
              InstantiatingGrpcChannelProvider.newBuilder().setPoolSize(8).build());

      BigtableDataSettings build = settingsBuilder.build();

Perhaps a following up question:
Do you think we should also try play with InstantiatingGrpcChannelProvider.newBuilder().setExecutorProvider(xxx) to let the connection running on provided executor or? What is the type of the default executor and what's its thread number if we don't use this setExecutorProvider setting? Thank you.

CheckAndMutateRow doesn't behave as expected

Environment details

API : BigTable Java client
version: 1.6.0 (compile "com.google.cloud:google-cloud-bigtable:1.6.0)
java version: 1.8

Issue

checkAndMutateRow doesn't work atomically if read is executed before checkAndMutateRow

Steps to reproduce

  1. Create a table test_table with column family : product, meta_data
  2. Push the test data to the table using cbt cbt set test_table id1 meta_data:master_version=3 product:id1="{\"productId\":\"p1\",\"updated_at\":\"2011-12-05T10:15:30\"}"
  3. Run the below snippet
  4. Update the master_version of the record with row key id1 when Thread is in sleep from cbt client
  5. The row is getting mutated even the value of master_version in table is no more equal to the value passed in filter.
  6. It works fine in case read operation is not executed before checkAndMutateRow

Code example

    Row productRow = bigtableDataReaderClient.readRow("test_table", "id1");
    ConditionalRowMutation condition = ConditionalRowMutation.create("test_table", "id1");
    Mutation mutation = Mutation.create();

    try {
      mutation.setCell("product", "id1", "test");
      RowCell productCell = productRow.getCells("product").get(0);
      
      long masterVersion = Long
          .parseLong(productRow.getCells("meta_data").get(0).getValue().toStringUtf8());
        Thread.sleep(10000);
          mutation.setCell("meta_data", "master_version", String.valueOf(masterVersion + 1));

          condition = condition.condition(
            Filters.FILTERS.chain()
            .filter(FILTERS.family().exactMatch("meta_data"))
            .filter(FILTERS.qualifier().exactMatch("master_version"))
            .filter(FILTERS.value().regex(String.valueOf(masterVersion))))
            .then(mutation);

          System.out.println(bigtableDataWiterClient.checkAndMutateRow(condition));
    } catch (Exception e) {
      e.printStackTrace();
    }

External references such as API reference guides

Any additional information below

It works fine if read is not invoked and value of masterVersion is hard bound

Update README with bigtable-client behavior on GKE

Please update the README about JVM Runtime behavior for CPU availability, while deploying this client on GKE with default configurations.

Also, add a note on the number of available grpc-default-executor-# & grpc-nio-worker-ELG-1-# threads.

Add syntactic sugar to set integers

It would be nice to add an overload to MutationsApi to have a setCell overload that takes a long. The overload will treat the param as a big-endian signed integer to make it easier to later use with ReadModifyWrite operations

Add a BOM artifact

Please publish a google-cloud-bigtable-bom pom artifact that contains the synced versions of artifacts from this repository. We will consume them upstream in the google-cloud-bom as a single version rather than trying to keep 7+ artifact versions synced.

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

ava/com/google/bigtable/admin/v2/LocationName.java.
2020-08-07 14:56:29,835 synthtool [INFO] > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmp81uy_8m2/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/SnapshotName.java.
2020-08-07 14:56:29,838 synthtool [INFO] > Replaced '^package (.*);' in /tmpfs/tmp/tmp81uy_8m2/google-cloud-bigtable-admin-v2-java/grpc-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminGrpc.java.
2020-08-07 14:56:29,839 synthtool [INFO] > Replaced '^package (.*);' in /tmpfs/tmp/tmp81uy_8m2/google-cloud-bigtable-admin-v2-java/grpc-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminGrpc.java.
2020-08-07 14:56:30,093 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminCallableFactory.java.
2020-08-07 14:56:30,094 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminStub.java.
2020-08-07 14:56:30,096 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminSettings.java.
2020-08-07 14:56:30,097 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminCallableFactory.java.
2020-08-07 14:56:30,099 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminStub.java.
2020-08-07 14:56:30,100 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminSettings.java.
2020-08-07 14:56:30,102 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStub.java.
2020-08-07 14:56:30,103 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStub.java.
2020-08-07 14:56:30,105 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java.
2020-08-07 14:56:30,108 synthtool [INFO] > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java.
2020-08-07 14:56:30,109 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminCallableFactory.java.
2020-08-07 14:56:30,110 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminStub.java.
2020-08-07 14:56:30,119 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminSettings.java.
2020-08-07 14:56:30,120 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminCallableFactory.java.
2020-08-07 14:56:30,121 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminStub.java.
2020-08-07 14:56:30,131 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminSettings.java.
2020-08-07 14:56:30,133 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStub.java.
2020-08-07 14:56:30,133 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStub.java.
2020-08-07 14:56:30,184 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java.
2020-08-07 14:56:30,274 synthtool [INFO] > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java.
2020-08-07 14:56:30,275 synthtool [INFO] > Running java formatter on 2 files
2020-08-07 14:56:33,579 synthtool [INFO] > Running java formatter on 139 files
2020-08-07 14:56:45,288 synthtool [INFO] > Running java formatter on 207 files
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/java-bigtable/synth.py", line 148, in <module>
    main()
  File "/home/kbuilder/.cache/synthtool/java-bigtable/synth.py", line 44, in main
    'CONTRIBUTING.md',
  File "/tmpfs/src/github/synthtool/synthtool/languages/java.py", line 355, in common_templates
    ["samples/**/src/main/java/**/*.java", "samples/**/pom.xml"]
  File "/tmpfs/src/github/synthtool/synthtool/gcp/snippets.py", line 121, in all_snippets
    for snippet, code in all_snippets_from_file(file).items():
  File "/tmpfs/src/github/synthtool/synthtool/gcp/snippets.py", line 105, in all_snippets_from_file
    for snippet, lines in snippet_lines.items()
  File "/tmpfs/src/github/synthtool/synthtool/gcp/snippets.py", line 105, in <dictcomp>
    for snippet, lines in snippet_lines.items()
  File "/tmpfs/src/github/synthtool/synthtool/gcp/snippets.py", line 49, in _trim_leading_whitespace
    max_leading_spaces = min(leading_spaces)
ValueError: min() arg is an empty sequence
2020-08-07 14:56:53,811 autosynth [ERROR] > Synthesis failed
2020-08-07 14:56:53,811 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at bdae336 deps: update dependency com.google.cloud:google-cloud-shared-dependencies to v0.8.6 (#377)
2020-08-07 14:56:53,859 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-08-07 14:56:53,891 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 690, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 539, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 670, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    has_changes = toolbox.synthesize_version_in_new_branch(synthesizer, youngest)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Create fromProtobuf utility method in existing models

**Please describe requested feature? **
User should be able to transform protobuf object into bigtable client's model object. Similar to:

/**
* Wraps the protobuf {@link ReadRowsRequest}.
*
* <p>WARNING: Please note that the project id & instance id in the table name will be overwritten
* by the configuration in the BigtableDataClient.
*/
public static Query fromProto(@Nonnull ReadRowsRequest request) {
Preconditions.checkArgument(request != null, "ReadRowsRequest must not be null");
Query query = new Query(NameUtil.extractTableIdFromTableName(request.getTableName()));
query.builder = request.toBuilder();
return query;
}

Additional context
Discussed offline in the last meeting.

Add the ability to get Row cells in serverside order

Bigtable stores data in the following order:

  1. lexicographically by row key
  2. family creation order
  3. lexicographically by qualifier
  4. reverse chronological by timestamp

The family ordering is not guaranteed so the data client currently pre-processes each row to change the ordering of families to be lexicographic order. This makes it convenient to do binary searches for specific values.

Unfortunately, this has negative repercussions when combined with cells_per_row_limit_filter and cells_per_row_offset_filter. Those filters are executed on the server side using the family creation order.

At the very least we need to update our docs to caution users against using those filters outside of a chain that narrows it to a single family.

In addition we should expose the server ordering of the cells on each row as Row#getRawCells() (maybe with a better name).

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 5))
  Using cached https://files.pythonhosted.org/packages/b2/5f/23e0023be6bb885d00ffbefad2942bc51a620328ee910f64abe5a8d18dd1/MarkupSafe-1.1.1-cp36-cp36m-manylinux1_x86_64.whl
  Saved ./MarkupSafe-1.1.1-cp36-cp36m-manylinux1_x86_64.whl
Collecting protobuf==3.13.0 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 6))
  Using cached https://files.pythonhosted.org/packages/30/79/510974552cebff2ba04038544799450defe75e96ea5f1675dbf72cc8744f/protobuf-3.13.0-cp36-cp36m-manylinux1_x86_64.whl
  Saved ./protobuf-3.13.0-cp36-cp36m-manylinux1_x86_64.whl
Collecting pypandoc==1.5 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 7))
  Using cached https://files.pythonhosted.org/packages/d6/b7/5050dc1769c8a93d3ec7c4bd55be161991c94b8b235f88bf7c764449e708/pypandoc-1.5.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmpfs/tmp/tmpjabht2hm/setuptools-tmp/setuptools/__init__.py", line 6, in <module>
        import distutils.core
      File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/_distutils_hack/__init__.py", line 82, in create_module
        return importlib.import_module('._distutils', 'setuptools')
      File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/importlib/__init__.py", line 126, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
    ModuleNotFoundError: No module named 'setuptools._distutils'
    
    ----------------------------------------
 (Command "python setup.py egg_info" failed with error code 1 in /tmpfs/tmp/pip-build-q_p9243o/pypandoc/
)
Loading: 0 packages loaded
ERROR: no such package '@gapic_generator_python_pip_deps//': pip_import failed: Collecting click==7.1.2 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 1))
  Using cached https://files.pythonhosted.org/packages/d2/3d/fa76db83bf75c4f8d338c2fd15c8d33fdd7ad23a9b5e57eb6c5de26b430e/click-7.1.2-py2.py3-none-any.whl
  Saved ./click-7.1.2-py2.py3-none-any.whl
Collecting google-api-core==1.22.1 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 2))
  Using cached https://files.pythonhosted.org/packages/e0/2d/7c6c75013105e1d2b6eaa1bf18a56995be1dbc673c38885aea31136e9918/google_api_core-1.22.1-py2.py3-none-any.whl
  Saved ./google_api_core-1.22.1-py2.py3-none-any.whl
Collecting googleapis-common-protos==1.52.0 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 3))
  Using cached https://files.pythonhosted.org/packages/03/74/3956721ea1eb4bcf7502a311fdaa60b85bd751de4e57d1943afe9b334141/googleapis_common_protos-1.52.0-py2.py3-none-any.whl
  Saved ./googleapis_common_protos-1.52.0-py2.py3-none-any.whl
Collecting jinja2==2.11.2 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 4))
  Using cached https://files.pythonhosted.org/packages/30/9e/f663a2aa66a09d838042ae1a2c5659828bb9b41ea3a6efa20a20fd92b121/Jinja2-2.11.2-py2.py3-none-any.whl
  Saved ./Jinja2-2.11.2-py2.py3-none-any.whl
Collecting MarkupSafe==1.1.1 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 5))
  Using cached https://files.pythonhosted.org/packages/b2/5f/23e0023be6bb885d00ffbefad2942bc51a620328ee910f64abe5a8d18dd1/MarkupSafe-1.1.1-cp36-cp36m-manylinux1_x86_64.whl
  Saved ./MarkupSafe-1.1.1-cp36-cp36m-manylinux1_x86_64.whl
Collecting protobuf==3.13.0 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 6))
  Using cached https://files.pythonhosted.org/packages/30/79/510974552cebff2ba04038544799450defe75e96ea5f1675dbf72cc8744f/protobuf-3.13.0-cp36-cp36m-manylinux1_x86_64.whl
  Saved ./protobuf-3.13.0-cp36-cp36m-manylinux1_x86_64.whl
Collecting pypandoc==1.5 (from -r /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_python/requirements.txt (line 7))
  Using cached https://files.pythonhosted.org/packages/d6/b7/5050dc1769c8a93d3ec7c4bd55be161991c94b8b235f88bf7c764449e708/pypandoc-1.5.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmpfs/tmp/tmpjabht2hm/setuptools-tmp/setuptools/__init__.py", line 6, in <module>
        import distutils.core
      File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/_distutils_hack/__init__.py", line 82, in create_module
        return importlib.import_module('._distutils', 'setuptools')
      File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/importlib/__init__.py", line 126, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
    ModuleNotFoundError: No module named 'setuptools._distutils'
    
    ----------------------------------------
 (Command "python setup.py egg_info" failed with error code 1 in /tmpfs/tmp/pip-build-q_p9243o/pypandoc/
)
INFO: Elapsed time: 2.093s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (0 packages loaded)
FAILED: Build did NOT complete successfully (0 packages loaded)

Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/java-bigtable/synth.py", line 148, in <module>
    main()
  File "/home/kbuilder/.cache/synthtool/java-bigtable/synth.py", line 30, in main
    generate_data_api(gapic)
  File "/home/kbuilder/.cache/synthtool/java-bigtable/synth.py", line 52, in generate_data_api
    bazel_target=f'//google/bigtable/v2:google-cloud-bigtable-v2-java',
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_bazel.py", line 62, in java_library
    service, version, "java", tar_strip_components=0, **kwargs
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_bazel.py", line 183, in _generate_code
    shell.run(bazel_run_args)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['bazel', '--max_idle_secs=240', 'build', '//google/bigtable/v2:google-cloud-bigtable-v2-java']' returned non-zero exit status 1.
2020-08-30 14:15:32,620 autosynth [ERROR] > Synthesis failed
2020-08-30 14:15:32,620 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at 848affb build(java): switch to release-publish app for notifying GitHub of release status (#396)
2020-08-30 14:15:32,627 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-08-30 14:15:32,633 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 690, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 539, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 670, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    has_changes = toolbox.synthesize_version_in_new_branch(synthesizer, youngest)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

2020-05-11 21:47:53,945 autosynth > logs will be written to: /tmpfs/src/github/synthtool/logs/googleapis/java-bigtable
2020-05-11 21:47:54,878 autosynth > Running: git config --global core.excludesfile /home/kbuilder/.autosynth-gitignore
2020-05-11 21:47:54,883 autosynth > Running: git config user.name yoshi-automation
2020-05-11 21:47:54,888 autosynth > Running: git config user.email [email protected]
2020-05-11 21:47:54,893 autosynth > Running: git config push.default simple
2020-05-11 21:47:54,898 autosynth > Running: git branch -f autosynth
2020-05-11 21:47:54,903 autosynth > Running: git checkout autosynth
2020-05-11 21:47:54,943 autosynth > autosynth flags:
2020-05-11 21:47:54,944 autosynth > AUTOSYNTH_MULTIPLE_COMMITS: true
2020-05-11 21:47:54,944 autosynth > AUTOSYNTH_MULTIPLE_PRS: true
2020-05-11 21:47:54,945 autosynth > Running: git rev-parse --show-toplevel
2020-05-11 21:47:54,950 autosynth > Running: git log -1 --pretty=%H
2020-05-11 21:47:54,956 autosynth > Running: git remote get-url origin
2020-05-11 21:47:54,961 autosynth > Running: git clone --single-branch https://github.com/googleapis/googleapis.git -- /tmpfs/tmp/tmp0aupnbwu/googleapis
2020-05-11 21:47:57,047 autosynth > Running: git log fb8f62b6784f43faf4b64179c57ce4b4931b1a00..HEAD --pretty=%H --no-decorate
2020-05-11 21:47:57,053 autosynth > Running: git clone --single-branch https://github.com/googleapis/synthtool.git -- /tmpfs/tmp/tmp0aupnbwu/synthtool
2020-05-11 21:47:57,593 autosynth > Running: git log be74d3e532faa47eb59f1a0eaebde0860d1d8ab4..HEAD --pretty=%H --no-decorate
2020-05-11 21:47:57,600 autosynth > Running: git log -1 --pretty=%at fb8f62b6784f43faf4b64179c57ce4b4931b1a00
2020-05-11 21:47:57,605 autosynth > Running: git log -1 --pretty=%at d3cc7bbf41afdfd6677cc1ab0d53965625cc073b
2020-05-11 21:47:57,610 autosynth > Running: git log -1 --pretty=%at 83816bb3093686a28af2891db5b7506614a820b1
2020-05-11 21:47:57,615 autosynth > Running: git log -1 --pretty=%at 73d4b5d9a791f8b1ee63d439ffe909bb8ffa07f7
2020-05-11 21:47:57,620 autosynth > Running: git log -1 --pretty=%at 482e5206e05e4ba8cd79738f6fb7a521c8c23555
2020-05-11 21:47:57,625 autosynth > Running: git log -1 --pretty=%at 1019b0d9dbd999e1107f90247fcc478678d1105c
2020-05-11 21:47:57,630 autosynth > Running: git log -1 --pretty=%at 4186d3e5424edc088a0f4dbce78f02dd860f3de8
2020-05-11 21:47:57,635 autosynth > Running: git log -1 --pretty=%at aed11c01e52921613b9ee469c2d85f5f33175fb7
2020-05-11 21:47:57,640 autosynth > Running: git log -1 --pretty=%at edd3b80fb770548d6ad780105f1782de6ff73ea0
2020-05-11 21:47:57,645 autosynth > Running: git log -1 --pretty=%at be74d3e532faa47eb59f1a0eaebde0860d1d8ab4
2020-05-11 21:47:57,650 autosynth > Running: git log -1 --pretty=%at 4674113712c0c7ada19e6a8219d7963ff174b392
2020-05-11 21:47:57,654 autosynth > Running: git log -1 --pretty=%at 5bbfd095faedfe273819d266f21e402192a29041
2020-05-11 21:47:57,659 autosynth > Running: git log -1 --pretty=%at 4fa923bd3dafb91df8613accbe2230299cc5b98e
2020-05-11 21:47:57,664 autosynth > Running: git log -1 --pretty=%at 55cdc844877d97139f25004229842624a6a86a02
2020-05-11 21:47:57,669 autosynth > Running: git log -1 --pretty=%at 98c50772ec23295c64cf0d2ddf199ea52961fd4c
2020-05-11 21:47:57,674 autosynth > Forking toolbox
2020-05-11 21:47:57,674 autosynth > forking: autosynth-self
2020-05-11 21:47:57,675 autosynth > Running: git branch -f autosynth-self
2020-05-11 21:47:57,680 autosynth > forking: autosynth-googleapis
2020-05-11 21:47:57,681 autosynth > Running: git branch -f autosynth-googleapis
2020-05-11 21:47:57,686 autosynth > forking: autosynth-synthtool
2020-05-11 21:47:57,686 autosynth > Running: git branch -f autosynth-synthtool
2020-05-11 21:47:57,692 autosynth > Forked branch: autosynth-self
2020-05-11 21:47:57,893 autosynth > Running: git checkout autosynth-self
2020-05-11 21:47:57,934 autosynth > Building most recent versions
2020-05-11 21:47:57,934 autosynth > Running: git checkout 0ef4959c25ab65d65ae3533455af0e7a351851d3
2020-05-11 21:47:57,943 autosynth > Running: git checkout be74d3e532faa47eb59f1a0eaebde0860d1d8ab4
2020-05-11 21:47:57,958 autosynth > Running: git checkout fb8f62b6784f43faf4b64179c57ce4b4931b1a00
2020-05-11 21:47:57,999 autosynth > Running: git branch -f autosynth-self-2
2020-05-11 21:47:58,005 autosynth > Running: git checkout autosynth-self-2
2020-05-11 21:47:58,013 autosynth > Running synthtool
2020-05-11 21:47:58,013 autosynth > Running: /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-05-11 21:47:58,013 autosynth >    -> /tmpfs/src/github/synthtool/logs/googleapis/java-bigtable/self/2/sponge_log.log
2020-05-11 21:52:06,184 autosynth > Failed executing /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-05-11 21:52:06,187 autosynth > Synthesis failed
2020-05-11 21:52:06,200 autosynth > Running: git reset --hard HEAD
2020-05-11 21:52:06,481 autosynth > Running: git checkout autosynth-self
2020-05-11 21:52:06,505 autosynth > Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.
2020-05-11 21:52:06,505 autosynth > Building most recent versions
2020-05-11 21:52:06,507 autosynth > Running: git checkout 0ef4959c25ab65d65ae3533455af0e7a351851d3
2020-05-11 21:52:06,524 autosynth > Running: git checkout 98c50772ec23295c64cf0d2ddf199ea52961fd4c
2020-05-11 21:52:06,857 autosynth > Running: git checkout edd3b80fb770548d6ad780105f1782de6ff73ea0
2020-05-11 21:52:07,405 autosynth > Running: git branch -f autosynth-15
2020-05-11 21:52:07,413 autosynth > Running: git checkout autosynth-15
2020-05-11 21:52:07,429 autosynth > Running synthtool
2020-05-11 21:52:07,429 autosynth > Running: /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-05-11 21:52:07,429 autosynth >    -> /tmpfs/src/github/synthtool/logs/googleapis/java-bigtable/15/sponge_log.log
2020-05-11 21:52:22,399 autosynth > Failed executing /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-05-11 21:52:22,408 autosynth > Synthesis failed
2020-05-11 21:52:22,441 autosynth > Running: git reset --hard HEAD
2020-05-11 21:52:22,945 autosynth > Running: git checkout autosynth
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 642, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 489, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 624, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 379, in synthesize_loop
    synthesize_inner_loop(toolbox, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 390, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 274, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 110, in synthesize
    proc.check_returncode()
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

Cloning into 'working_repo'...
Switched to a new branch 'autosynth'
Cloning into '/tmpfs/tmp/tmpc2u373aa/googleapis'...
Cloning into '/tmpfs/tmp/tmpc2u373aa/synthtool'...
Switched to branch 'autosynth-self'
Note: checking out '1571dd939c24484309b8f484f73f29e602fce27c'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 1571dd9 deps: update google.common-protos.version to v1.18.0 (#279)
Note: checking out '275fbcce2c900278d487c33293a3c7e1fbcd3a34'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 275fbcce feat: pubsub/v1 add an experimental filter field to Subscription
Note: checking out '19465d3ec5e5acdb01521d8f3bddd311bcbee28d'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 19465d3 build: use codecov's action, now that it's authless (#499)
Switched to a new branch 'autosynth-self-2'
2020-05-05 19:00:23 [INFO] Running synthtool
2020-05-05 19:00:23 [INFO] ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
2020-05-05 19:00:24,126 synthtool > Executing /tmpfs/src/github/synthtool/working_repo/synth.py.
On branch autosynth-self-2
nothing to commit, working tree clean
2020-05-05 19:00:24,263 synthtool > Ensuring dependencies.
2020-05-05 19:00:24,274 synthtool > Cloning googleapis.
2020-05-05 19:00:24,275 synthtool > Using precloned repo /tmpfs/tmp/tmpc2u373aa/googleapis
2020-05-05 19:00:24,280 synthtool > Generating code for: //google/bigtable/v2:google-cloud-bigtable-v2-java.
2020-05-05 19:00:39,281 synthtool > Failed executing bazel build //google/bigtable/v2:google-cloud-bigtable-v2-java:

Starting local Bazel server and connecting to it...
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
INFO: SHA256 (https://github.com/protocolbuffers/protobuf/archive/fe1790ca0df67173702f70d5646b82f48f412b99.zip) = 419f654d36998a51de2e0b79a67885ec48f8d803615ce66ec82cd15f54936730
Loading: 0 packages loaded
DEBUG: Rule 'com_google_protobuf' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "419f654d36998a51de2e0b79a67885ec48f8d803615ce66ec82cd15f54936730"
DEBUG: Call stack for the definition of repository 'com_google_protobuf' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:34:1
INFO: SHA256 (https://github.com/grpc/grpc/archive/8347f4753568b5b66e49111c60ae2841278d3f33.zip) = 8d87aa54941db316e8a3370fdee1173ac4b2ede5724877d36a57edbc6dd136f0
Loading: 0 packages loaded
Loading: 0 packages loaded
DEBUG: Rule 'com_github_grpc_grpc' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "8d87aa54941db316e8a3370fdee1173ac4b2ede5724877d36a57edbc6dd136f0"
DEBUG: Call stack for the definition of repository 'com_github_grpc_grpc' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:80:1
INFO: SHA256 (https://github.com/googleapis/gax-java/archive/v1.54.0.zip) = 61f813b2ad571a0ca59f9e28252a9958bb283198ab4dc827eb776c48dd13fc0d
Loading: 0 packages loaded
DEBUG: Rule 'com_google_api_gax_java' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "61f813b2ad571a0ca59f9e28252a9958bb283198ab4dc827eb776c48dd13fc0d"
DEBUG: Call stack for the definition of repository 'com_google_api_gax_java' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:108:1
Loading: 0 packages loaded
INFO: SHA256 (https://github.com/googleapis/gapic-generator/archive/43a8733bac1590f13fe1a04c8dedb9e4a7069deb.zip) = 2fe6c810e9bdc0162b4984b224325099fa440679638ae73c7657cc9201157d61
Loading: 0 packages loaded
DEBUG: Rule 'com_google_api_codegen' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "2fe6c810e9bdc0162b4984b224325099fa440679638ae73c7657cc9201157d61"
DEBUG: Call stack for the definition of repository 'com_google_api_codegen' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:62:1
INFO: SHA256 (https://github.com/googleapis/protoc-java-resource-names-plugin/archive/079274eb040ac2afe46b4865efb641561f530771.zip) = a597666f257a191fa38678ce50c7f5eca9de2ff2eaf3a9b7e9250dcf0fa77491
DEBUG: Rule 'com_google_protoc_java_resource_names_plugin' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "a597666f257a191fa38678ce50c7f5eca9de2ff2eaf3a9b7e9250dcf0fa77491"
DEBUG: Call stack for the definition of repository 'com_google_protoc_java_resource_names_plugin' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:136:1
INFO: SHA256 (https://github.com/googleapis/protoc-docs-plugin/archive/b2502d56b5ec2d47e063976da773206af295362d.zip) = 765ec120bb165ae98c3bae78705d2a127e64016e59738552e909fc8b11d06338
DEBUG: Rule 'protoc_docs_plugin' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "765ec120bb165ae98c3bae78705d2a127e64016e59738552e909fc8b11d06338"
DEBUG: Call stack for the definition of repository 'protoc_docs_plugin' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:160:1
Loading: 0 packages loaded
INFO: SHA256 (https://github.com/bazelbuild/bazel-gazelle/archive/0.17.0.zip) = 55d4c42482dc5d81e89cb96998fc9f05a108ee17ae493a4175a7b99a05be5380
DEBUG: Rule 'bazel_gazelle' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "55d4c42482dc5d81e89cb96998fc9f05a108ee17ae493a4175a7b99a05be5380"
DEBUG: Call stack for the definition of repository 'bazel_gazelle' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:194:1
Loading: 0 packages loaded
    currently loading: google/bigtable/v2
INFO: SHA256 (https://github.com/grpc/grpc-java/archive/v1.27.2.zip) = 92ffb4391f847e02e115933a761e243dd1423f3fcafdc9b7ae0327eca102d76b
DEBUG: Rule 'io_grpc_grpc_java' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "92ffb4391f847e02e115933a761e243dd1423f3fcafdc9b7ae0327eca102d76b"
DEBUG: Call stack for the definition of repository 'io_grpc_grpc_java' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/com_google_api_gax_java/repositories.bzl:114:5
 - /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/com_google_api_gax_java/repositories.bzl:60:5
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:123:1
Analyzing: target //google/bigtable/v2:google-cloud-bigtable-v2-java (1 packages loaded, 0 targets configured)
INFO: Call stack for the definition of repository 'bazel_skylib' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/3d7fd98a0f6b54fc8015cb5b5e4c1253/external/bazel_tools/tools/build_defs/repo/http.bzl:292:16):
 - /tmpfs/tmp/tmpc2u373aa/googleapis/WORKSPACE:29:1
ERROR: While resolving toolchains for target //google/bigtable/v2:bigtable_java_gapic_test: invalid registered toolchain '@gapic_generator_python//:pyenv3_toolchain': no such package '@gapic_generator_python//': The repository '@gapic_generator_python' could not be resolved
ERROR: Analysis of target '//google/bigtable/v2:google-cloud-bigtable-v2-java' failed; build aborted: invalid registered toolchain '@gapic_generator_python//:pyenv3_toolchain': no such package '@gapic_generator_python//': The repository '@gapic_generator_python' could not be resolved
INFO: Elapsed time: 14.948s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (12 packages loaded, 23 targets configured)
FAILED: Build did NOT complete successfully (12 packages loaded, 23 targets configured)

2020-05-05 19:00:39,282 synthtool > Wrote metadata to synth.metadata.
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/tmpfs/src/github/synthtool/working_repo/synth.py", line 146, in <module>
    main()
  File "/tmpfs/src/github/synthtool/working_repo/synth.py", line 30, in main
    generate_data_api(gapic)
  File "/tmpfs/src/github/synthtool/working_repo/synth.py", line 50, in generate_data_api
    bazel_target=f'//google/bigtable/v2:google-cloud-bigtable-v2-java',
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_bazel.py", line 63, in java_library
    return self._generate_code(service, version, "java", **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_bazel.py", line 177, in _generate_code
    shell.run(bazel_run_args)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['bazel', 'build', '//google/bigtable/v2:google-cloud-bigtable-v2-java']' returned non-zero exit status 1.
2020-05-05 19:00:39 [ERROR] Synthesis failed
HEAD is now at 1571dd9 deps: update google.common-protos.version to v1.18.0 (#279)
Switched to branch 'autosynth-self'
Note: checking out '1571dd939c24484309b8f484f73f29e602fce27c'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 1571dd9 deps: update google.common-protos.version to v1.18.0 (#279)
Previous HEAD position was 275fbcce feat: pubsub/v1 add an experimental filter field to Subscription
HEAD is now at a3a0bf0f BREAKING_CHANGE: Removing TimeSeriesQueryLanguageCondition as an alert condition type. The condition type is unsupported and unused. It was originally added for the Monitoring Query Language Alpha feature. refactor!: Drop support for TimeSeriesQueryLanguageCondition as an alert condition type.
Previous HEAD position was 19465d3 build: use codecov's action, now that it's authless (#499)
HEAD is now at ab88356 fix: make .kokoro-autosynth executable (#522)
Switched to a new branch 'autosynth-214'
2020-05-05 19:00:39 [INFO] Running synthtool
2020-05-05 19:00:39 [INFO] ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
2020-05-05 19:00:39,687 synthtool > Executing /tmpfs/src/github/synthtool/working_repo/synth.py.
On branch autosynth-214
nothing to commit, working tree clean
2020-05-05 19:00:39,821 synthtool > Ensuring dependencies.
2020-05-05 19:00:39,832 synthtool > Cloning googleapis.
2020-05-05 19:00:39,833 synthtool > Using precloned repo /tmpfs/tmp/tmpc2u373aa/googleapis
2020-05-05 19:00:39,837 synthtool > Generating code for: //google/bigtable/v2:google-cloud-bigtable-v2-java.
2020-05-05 19:04:30,244 synthtool > Generated code into /tmpfs/tmp/tmpu26q_64p.
2020-05-05 19:04:30,265 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/Cell.java.
2020-05-05 19:04:30,266 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowRequest.java.
2020-05-05 19:04:30,266 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/RowRangeOrBuilder.java.
2020-05-05 19:04:30,266 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/RowSet.java.
2020-05-05 19:04:30,267 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/RowOrBuilder.java.
2020-05-05 19:04:30,267 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequestOrBuilder.java.
2020-05-05 19:04:30,267 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/TimestampRange.java.
2020-05-05 19:04:30,268 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowRequestOrBuilder.java.
2020-05-05 19:04:30,268 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadRowsRequest.java.
2020-05-05 19:04:30,268 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/SampleRowKeysRequestOrBuilder.java.
2020-05-05 19:04:30,269 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadRowsResponse.java.
2020-05-05 19:04:30,269 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowResponseOrBuilder.java.
2020-05-05 19:04:30,269 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadModifyWriteRule.java.
2020-05-05 19:04:30,270 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadRowsResponseOrBuilder.java.
2020-05-05 19:04:30,270 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/RowSetOrBuilder.java.
2020-05-05 19:04:30,270 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowsRequest.java.
2020-05-05 19:04:30,271 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/Family.java.
2020-05-05 19:04:30,272 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/RowFilter.java.
2020-05-05 19:04:30,272 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequestOrBuilder.java.
2020-05-05 19:04:30,273 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ColumnRangeOrBuilder.java.
2020-05-05 19:04:30,273 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/BigtableProto.java.
2020-05-05 19:04:30,273 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ValueRangeOrBuilder.java.
2020-05-05 19:04:30,273 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadRowsRequestOrBuilder.java.
2020-05-05 19:04:30,273 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/TimestampRangeOrBuilder.java.
2020-05-05 19:04:30,273 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadModifyWriteRuleOrBuilder.java.
2020-05-05 19:04:30,274 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowResponse.java.
2020-05-05 19:04:30,274 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/CellOrBuilder.java.
2020-05-05 19:04:30,274 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/FamilyOrBuilder.java.
2020-05-05 19:04:30,274 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/SampleRowKeysRequest.java.
2020-05-05 19:04:30,274 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/RowFilterOrBuilder.java.
2020-05-05 19:04:30,274 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/RowRange.java.
2020-05-05 19:04:30,275 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowResponse.java.
2020-05-05 19:04:30,275 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/Column.java.
2020-05-05 19:04:30,275 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/SampleRowKeysResponseOrBuilder.java.
2020-05-05 19:04:30,275 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/SampleRowKeysResponse.java.
2020-05-05 19:04:30,276 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/Mutation.java.
2020-05-05 19:04:30,276 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/CheckAndMutateRowResponseOrBuilder.java.
2020-05-05 19:04:30,276 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowsRequestOrBuilder.java.
2020-05-05 19:04:30,277 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutationOrBuilder.java.
2020-05-05 19:04:30,277 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowsResponseOrBuilder.java.
2020-05-05 19:04:30,277 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/Row.java.
2020-05-05 19:04:30,277 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ColumnOrBuilder.java.
2020-05-05 19:04:30,278 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/CheckAndMutateRowResponse.java.
2020-05-05 19:04:30,278 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ValueRange.java.
2020-05-05 19:04:30,278 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowsResponse.java.
2020-05-05 19:04:30,278 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequest.java.
2020-05-05 19:04:30,279 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/DataProto.java.
2020-05-05 19:04:30,279 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/MutateRowResponseOrBuilder.java.
2020-05-05 19:04:30,279 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequest.java.
2020-05-05 19:04:30,279 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/ColumnRange.java.
2020-05-05 19:04:30,285 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/proto-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/TableName.java.
2020-05-05 19:04:30,288 synthtool > Replaced '^package (.*);' in /tmpfs/tmp/tmpu26q_64p/google-cloud-bigtable-v2-java/grpc-google-cloud-bigtable-v2-java/src/main/java/com/google/bigtable/v2/BigtableGrpc.java.
2020-05-05 19:04:30,365 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStub.java.
2020-05-05 19:04:30,366 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java.
2020-05-05 19:04:30,367 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableStub.java.
2020-05-05 19:04:30,367 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableCallableFactory.java.
2020-05-05 19:04:30,368 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStub.java.
2020-05-05 19:04:30,371 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java.
2020-05-05 19:04:30,372 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableStub.java.
2020-05-05 19:04:30,372 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableCallableFactory.java.
2020-05-05 19:04:30,375 synthtool > Running java formatter on 1 files
2020-05-05 19:04:33,165 synthtool > Running java formatter on 51 files
2020-05-05 19:04:41,967 synthtool > Generating code for: //google/bigtable/admin/v2:google-cloud-bigtable-admin-v2-java.
2020-05-05 19:04:52,216 synthtool > Generated code into /tmpfs/tmp/tmpl4lby9vo.
2020-05-05 19:04:52,232 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateInstanceMetadataOrBuilder.java.
2020-05-05 19:04:52,233 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetTableRequest.java.
2020-05-05 19:04:52,233 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequestOrBuilder.java.
2020-05-05 19:04:52,233 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequestOrBuilder.java.
2020-05-05 19:04:52,233 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileMetadata.java.
2020-05-05 19:04:52,234 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponseOrBuilder.java.
2020-05-05 19:04:52,234 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequestOrBuilder.java.
2020-05-05 19:04:52,234 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetBackupRequestOrBuilder.java.
2020-05-05 19:04:52,234 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateClusterMetadataOrBuilder.java.
2020-05-05 19:04:52,234 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/StorageType.java.
2020-05-05 19:04:52,235 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListTablesRequestOrBuilder.java.
2020-05-05 19:04:52,235 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListClustersResponseOrBuilder.java.
2020-05-05 19:04:52,235 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/AppProfileOrBuilder.java.
2020-05-05 19:04:52,235 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadataOrBuilder.java.
2020-05-05 19:04:52,235 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequest.java.
2020-05-05 19:04:52,236 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GcRuleOrBuilder.java.
2020-05-05 19:04:52,236 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequest.java.
2020-05-05 19:04:52,236 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequestOrBuilder.java.
2020-05-05 19:04:52,236 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/OperationProgressOrBuilder.java.
2020-05-05 19:04:52,236 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponseOrBuilder.java.
2020-05-05 19:04:52,237 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequestOrBuilder.java.
2020-05-05 19:04:52,237 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequest.java.
2020-05-05 19:04:52,237 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequestOrBuilder.java.
2020-05-05 19:04:52,237 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileRequest.java.
2020-05-05 19:04:52,238 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponse.java.
2020-05-05 19:04:52,238 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponse.java.
2020-05-05 19:04:52,238 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyResponse.java.
2020-05-05 19:04:52,238 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequestOrBuilder.java.
2020-05-05 19:04:52,239 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequest.java.
2020-05-05 19:04:52,239 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequest.java.
2020-05-05 19:04:52,239 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminProto.java.
2020-05-05 19:04:52,239 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListClustersRequestOrBuilder.java.
2020-05-05 19:04:52,240 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequest.java.
2020-05-05 19:04:52,240 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BackupOrBuilder.java.
2020-05-05 19:04:52,240 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadata.java.
2020-05-05 19:04:52,240 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/SnapshotOrBuilder.java.
2020-05-05 19:04:52,240 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotMetadataOrBuilder.java.
2020-05-05 19:04:52,241 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/PartialUpdateInstanceRequest.java.
2020-05-05 19:04:52,241 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequestOrBuilder.java.
2020-05-05 19:04:52,241 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateClusterMetadata.java.
2020-05-05 19:04:52,241 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateBackupRequestOrBuilder.java.
2020-05-05 19:04:52,242 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequestOrBuilder.java.
2020-05-05 19:04:52,242 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/Backup.java.
2020-05-05 19:04:52,242 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateTableRequest.java.
2020-05-05 19:04:52,243 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateClusterMetadata.java.
2020-05-05 19:04:52,243 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequestOrBuilder.java.
2020-05-05 19:04:52,243 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequestOrBuilder.java.
2020-05-05 19:04:52,243 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequest.java.
2020-05-05 19:04:52,244 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateInstanceMetadata.java.
2020-05-05 19:04:52,244 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequest.java.
2020-05-05 19:04:52,244 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/SnapshotTableMetadata.java.
2020-05-05 19:04:52,244 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponseOrBuilder.java.
2020-05-05 19:04:52,245 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/InstanceProto.java.
2020-05-05 19:04:52,245 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequestOrBuilder.java.
2020-05-05 19:04:52,245 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequest.java.
2020-05-05 19:04:52,245 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateInstanceMetadata.java.
2020-05-05 19:04:52,245 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequest.java.
2020-05-05 19:04:52,246 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadataOrBuilder.java.
2020-05-05 19:04:52,246 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BackupInfoOrBuilder.java.
2020-05-05 19:04:52,246 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetClusterRequest.java.
2020-05-05 19:04:52,246 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequestOrBuilder.java.
2020-05-05 19:04:52,247 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotMetadata.java.
2020-05-05 19:04:52,247 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequestOrBuilder.java.
2020-05-05 19:04:52,247 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListTablesResponseOrBuilder.java.
2020-05-05 19:04:52,247 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequestOrBuilder.java.
2020-05-05 19:04:52,247 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CommonProto.java.
2020-05-05 19:04:52,248 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListClustersResponse.java.
2020-05-05 19:04:52,248 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequest.java.
2020-05-05 19:04:52,248 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequest.java.
2020-05-05 19:04:52,248 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequestOrBuilder.java.
2020-05-05 19:04:52,249 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateBackupRequest.java.
2020-05-05 19:04:52,249 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetTableRequestOrBuilder.java.
2020-05-05 19:04:52,249 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequest.java.
2020-05-05 19:04:52,249 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequest.java.
2020-05-05 19:04:52,249 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ClusterOrBuilder.java.
2020-05-05 19:04:52,250 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadataOrBuilder.java.
2020-05-05 19:04:52,250 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponse.java.
2020-05-05 19:04:52,250 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/Cluster.java.
2020-05-05 19:04:52,250 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/SnapshotTableMetadataOrBuilder.java.
2020-05-05 19:04:52,250 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateClusterMetadataOrBuilder.java.
2020-05-05 19:04:52,251 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyResponseOrBuilder.java.
2020-05-05 19:04:52,251 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequestOrBuilder.java.
2020-05-05 19:04:52,251 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileRequestOrBuilder.java.
2020-05-05 19:04:52,251 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/PartialUpdateInstanceRequestOrBuilder.java.
2020-05-05 19:04:52,252 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListTablesRequest.java.
2020-05-05 19:04:52,252 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequest.java.
2020-05-05 19:04:52,252 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateInstanceMetadataOrBuilder.java.
2020-05-05 19:04:52,252 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListTablesResponse.java.
2020-05-05 19:04:52,253 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequest.java.
2020-05-05 19:04:52,253 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminProto.java.
2020-05-05 19:04:52,253 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GcRule.java.
2020-05-05 19:04:52,253 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BackupInfo.java.
2020-05-05 19:04:52,254 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponse.java.
2020-05-05 19:04:52,254 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListClustersRequest.java.
2020-05-05 19:04:52,254 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetClusterRequestOrBuilder.java.
2020-05-05 19:04:52,254 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequestOrBuilder.java.
2020-05-05 19:04:52,255 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequest.java.
2020-05-05 19:04:52,255 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequest.java.
2020-05-05 19:04:52,255 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequest.java.
2020-05-05 19:04:52,255 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileMetadataOrBuilder.java.
2020-05-05 19:04:52,255 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequestOrBuilder.java.
2020-05-05 19:04:52,256 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequest.java.
2020-05-05 19:04:52,256 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequest.java.
2020-05-05 19:04:52,256 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/OperationProgress.java.
2020-05-05 19:04:52,257 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/TableProto.java.
2020-05-05 19:04:52,257 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponse.java.
2020-05-05 19:04:52,257 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequest.java.
2020-05-05 19:04:52,257 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequestOrBuilder.java.
2020-05-05 19:04:52,257 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/InstanceOrBuilder.java.
2020-05-05 19:04:52,258 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/AppProfile.java.
2020-05-05 19:04:52,258 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequestOrBuilder.java.
2020-05-05 19:04:52,258 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadata.java.
2020-05-05 19:04:52,258 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/RestoreInfoOrBuilder.java.
2020-05-05 19:04:52,259 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadata.java.
2020-05-05 19:04:52,259 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequest.java.
2020-05-05 19:04:52,259 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequestOrBuilder.java.
2020-05-05 19:04:52,259 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/RestoreInfo.java.
2020-05-05 19:04:52,260 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequest.java.
2020-05-05 19:04:52,260 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequestOrBuilder.java.
2020-05-05 19:04:52,260 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/Instance.java.
2020-05-05 19:04:52,261 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/Table.java.
2020-05-05 19:04:52,261 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponseOrBuilder.java.
2020-05-05 19:04:52,261 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/Snapshot.java.
2020-05-05 19:04:52,261 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ColumnFamily.java.
2020-05-05 19:04:52,261 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ColumnFamilyOrBuilder.java.
2020-05-05 19:04:52,262 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GetBackupRequest.java.
2020-05-05 19:04:52,262 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/CreateTableRequestOrBuilder.java.
2020-05-05 19:04:52,262 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/TableOrBuilder.java.
2020-05-05 19:04:52,262 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequestOrBuilder.java.
2020-05-05 19:04:52,262 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponseOrBuilder.java.
2020-05-05 19:04:52,263 synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/RestoreSourceType.java.
2020-05-05 19:04:52,264 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/InstanceName.java.
2020-05-05 19:04:52,264 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/TableName.java.
2020-05-05 19:04:52,264 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ProjectName.java.
2020-05-05 19:04:52,265 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/LocationName.java.
2020-05-05 19:04:52,265 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/ClusterName.java.
2020-05-05 19:04:52,265 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/AppProfileName.java.
2020-05-05 19:04:52,265 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/SnapshotName.java.
2020-05-05 19:04:52,265 synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/proto-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BackupName.java.
2020-05-05 19:04:52,268 synthtool > Replaced '^package (.*);' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/grpc-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminGrpc.java.
2020-05-05 19:04:52,270 synthtool > Replaced '^package (.*);' in /tmpfs/tmp/tmpl4lby9vo/google-cloud-bigtable-admin-v2-java/grpc-google-cloud-bigtable-admin-v2-java/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminGrpc.java.
2020-05-05 19:04:52,368 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminCallableFactory.java.
2020-05-05 19:04:52,369 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminStub.java.
2020-05-05 19:04:52,370 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminSettings.java.
2020-05-05 19:04:52,370 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminCallableFactory.java.
2020-05-05 19:04:52,371 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminStub.java.
2020-05-05 19:04:52,372 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminSettings.java.
2020-05-05 19:04:52,372 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStub.java.
2020-05-05 19:04:52,373 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStub.java.
2020-05-05 19:04:52,374 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java.
2020-05-05 19:04:52,376 synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java.
2020-05-05 19:04:52,377 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminCallableFactory.java.
2020-05-05 19:04:52,378 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminStub.java.
2020-05-05 19:04:52,385 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminSettings.java.
2020-05-05 19:04:52,386 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminCallableFactory.java.
2020-05-05 19:04:52,387 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminStub.java.
2020-05-05 19:04:52,395 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminSettings.java.
2020-05-05 19:04:52,396 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStub.java.
2020-05-05 19:04:52,396 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStub.java.
2020-05-05 19:04:52,445 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableInstanceAdminClient.java.
2020-05-05 19:04:52,533 synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BaseBigtableTableAdminClient.java.
2020-05-05 19:04:52,534 synthtool > Running java formatter on 2 files
2020-05-05 19:04:55,877 synthtool > Running java formatter on 139 files
2020-05-05 19:05:03,314 synthtool > Failed executing java -jar /home/kbuilder/.cache/synthtool/google-java-format-1.7.jar --replace ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateClusterMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/StorageType.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfileOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GcRuleOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OperationProgressOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminProto.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/PartialUpdateInstanceRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateBackupRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Backup.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateClusterMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ProjectName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceProto.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateInstanceMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfoOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CommonProto.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/LocationName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateBackupRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ClusterOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Cluster.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ClusterName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/PartialUpdateInstanceRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateInstanceMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfileName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminProto.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GcRule.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfo.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileMetadataOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OperationProgress.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponse.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfile.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreInfoOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadata.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreInfo.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupName.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Instance.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Snapshot.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ColumnFamily.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ColumnFamilyOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequest.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequestOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponseOrBuilder.java ./proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreSourceType.java:

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x000000079ca00000, 268959744, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 268959744 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /tmpfs/src/github/synthtool/working_repo/hs_err_pid13576.log

2020-05-05 19:05:03,435 synthtool > Wrote metadata to synth.metadata.
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/tmpfs/src/github/synthtool/working_repo/synth.py", line 146, in <module>
    main()
  File "/tmpfs/src/github/synthtool/working_repo/synth.py", line 31, in main
    generate_admin_api(gapic)
  File "/tmpfs/src/github/synthtool/working_repo/synth.py", line 129, in generate_admin_api
    java.format_code(f'./proto-google-cloud-bigtable-admin-v2/src')
  File "/tmpfs/src/github/synthtool/synthtool/languages/java.py", line 82, in format_code
    shell.run(["java", "-jar", str(jar), "--replace"] + files)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['java', '-jar', '/home/kbuilder/.cache/synthtool/google-java-format-1.7.jar', '--replace', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateClusterMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/StorageType.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfileOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GcRuleOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OperationProgressOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteInstanceRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteClusterRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteAppProfileRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableInstanceAdminProto.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/PartialUpdateInstanceRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateBackupRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Backup.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateClusterMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListBackupsRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ProjectName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceProto.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateInstanceMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfoOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteSnapshotRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteBackupRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CommonProto.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/LocationName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DropRowRangeRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateBackupRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetTableRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateAppProfileRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateInstanceRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ClusterOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Cluster.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CheckConsistencyResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ClusterName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/PartialUpdateInstanceRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetAppProfileRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateInstanceMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListTablesResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotTableRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfileName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BigtableTableAdminProto.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GcRule.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupInfo.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListClustersRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetClusterRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListSnapshotsRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/UpdateAppProfileMetadataOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetInstanceRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateClusterRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableFromSnapshotRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/SnapshotName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OperationProgress.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesResponse.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/InstanceOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/AppProfile.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ModifyColumnFamiliesRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateBackupMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreInfoOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/OptimizeRestoredTableMetadata.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/DeleteTableRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreInfo.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetSnapshotRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/BackupName.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListInstancesRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Instance.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ListAppProfilesResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Snapshot.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ColumnFamily.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/ColumnFamilyOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GetBackupRequest.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/CreateTableRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreTableRequestOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/GenerateConsistencyTokenResponseOrBuilder.java', './proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/RestoreSourceType.java']' returned non-zero exit status 1.
2020-05-05 19:05:03 [ERROR] Synthesis failed
HEAD is now at 1571dd9 deps: update google.common-protos.version to v1.18.0 (#279)
Switched to branch 'autosynth'
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 584, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 465, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 574, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 360, in synthesize_loop
    synthesize_inner_loop(toolbox, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 370, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 259, in synthesize_version_in_new_branch
    synthesizer.synthesize(self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 115, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Bigtable emulator rejects fuzzy key filters using integer values over 127

Environment details

OS type and version: Arch Linux (kernal 5.7.12)
Java version: AdoptOpenJDK 14.0.1+7
bigtable version(s): google-cloud-bigtable-emulator 0.123.0

Steps to reproduce

  1. Create a table that uses integer keys. In our case, each row key is 5 integers or 20 bytes. Byte keys are created by calling Bytes.toBytes(x) on each integer and concatenating the results, so the first 4 bytes are the first integer, etc.
  2. Insert some data
  3. Build a scan with a fuzzy filter.
  4. When all the integers in the fuzzy filter keys are below 128, everything works. If any are 128 or higher, it fails. I tested our code with [127,0,0,0,0] (works) and [128,0,0,0,0] (fails).

Code example

See tickets and PRs linked below, which have some potentially relevant sample code.

Stack trace

Aug. 05, 2020 3:02:34 P.M. com.google.cloud.bigtable.emulator.v2.Emulator$2 run
WARNING: 2020/08/05 15:02:34 Bad pattern "\\x00\\x00\\x00\x80\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C\\C*": error parsing regexp: invalid UTF-8: `๏ฟฝ\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C*)$`
2020-08-05 15:02:34,055 3744 [grpc-default-executor-0] ERROR c.g.c.b.g.a.AbstractRetryingOperation - Could not complete RPC. Failure #0, got: Status{code=INVALID_ARGUMENT, description=Error in field 'rowkey_regex_filter' : error parsing regexp: invalid UTF-8: `๏ฟฝ\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C*)$`, cause=null} on channel 3.

... snip ...

Caused by: com.google.cloud.bigtable.grpc.io.IOExceptionWithStatus: Error in response stream
	at com.google.cloud.bigtable.grpc.scanner.ResultQueueEntry$ExceptionResultQueueEntry.getResponseOrThrow(ResultQueueEntry.java:100)
	at com.google.cloud.bigtable.grpc.scanner.ResponseQueueReader.getNextMergedRow(ResponseQueueReader.java:100)
	at com.google.cloud.bigtable.grpc.scanner.ResumingStreamingResultScanner.next(ResumingStreamingResultScanner.java:78)
	at com.google.cloud.bigtable.grpc.scanner.ResumingStreamingResultScanner.next(ResumingStreamingResultScanner.java:33)
	at com.google.cloud.bigtable.hbase.adapters.read.BigtableResultScannerAdapter$1.next(BigtableResultScannerAdapter.java:63)
	at org.apache.hadoop.hbase.client.AbstractClientScanner$1.hasNext(AbstractClientScanner.java:92)
	... 71 more
Caused by: io.grpc.StatusRuntimeException: INVALID_ARGUMENT: Error in field 'rowkey_regex_filter' : error parsing regexp: invalid UTF-8: `๏ฟฝ\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C\C*)$`
	at io.grpc.Status.asRuntimeException(Status.java:524)
	at com.google.cloud.bigtable.grpc.async.AbstractRetryingOperation.onError(AbstractRetryingOperation.java:214)
	at com.google.cloud.bigtable.grpc.async.AbstractRetryingOperation.onClose(AbstractRetryingOperation.java:177)
	at com.google.cloud.bigtable.grpc.scanner.RetryingReadRowsOperation.onClose(RetryingReadRowsOperation.java:217)
	at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
	at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
	at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
	at com.google.cloud.bigtable.grpc.io.Watchdog$WatchedCall$1.onClose(Watchdog.java:180)
	at com.google.cloud.bigtable.grpc.io.ChannelPool$InstrumentedChannel$2.onClose(ChannelPool.java:212)
	at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:426)
	at io.grpc.internal.ClientCallImpl.access$500(ClientCallImpl.java:66)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:689)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$900(ClientCallImpl.java:577)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:751)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:740)
	at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
	at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
	at java.base/java.lang.Thread.run(Thread.java:832)

Any additional information below

Similar issues that seems relevant:

googleapis/java-bigtable-hbase#1770
googleapis/java-bigtable-hbase#1703

I suspect that this test case may fail when run against the bigtable emulator, but I have not tried: googleapis/java-bigtable-hbase#1782

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

Cloning into 'working_repo'...
Switched to branch 'autosynth'
Running synthtool
['/tmpfs/src/git/autosynth/env/bin/python3', '-m', 'synthtool', 'synth.py', '--']
synthtool > Executing /tmpfs/src/git/autosynth/working_repo/synth.py.
synthtool > Ensuring dependencies.
synthtool > Pulling artman image.
latest: Pulling from googleapis/artman
Digest: sha256:6aec9c34db0e4be221cdaf6faba27bdc07cfea846808b3d3b964dfce3a9a0f9b
Status: Image is up to date for googleapis/artman:latest
synthtool > Cloning googleapis.
synthtool > Running generator for google/bigtable/artman_bigtable.yaml.
synthtool > Generated code into /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableProto.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Cell.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsResponseOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysRequestOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowResponseOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsRequest.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsResponseOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ColumnRange.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsRequest.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowResponse.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/RowSet.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutationOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequestOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsResponse.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ColumnRangeOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/RowFilter.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequestOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CellOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/TimestampRange.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowRequest.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowResponseOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowRequest.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysResponse.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadRowsRequestOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ValueRange.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Row.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/FamilyOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRule.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/DataProto.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/RowSetOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Mutation.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/RowRangeOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysResponseOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowResponseOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ColumnOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsResponse.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/CheckAndMutateRowResponse.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Column.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/Family.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowRequestOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/RowFilterOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/SampleRowKeysRequest.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/RowOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ValueRangeOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowResponse.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRowRequest.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/ReadModifyWriteRuleOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/MutateRowsRequestOrBuilder.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/RowRange.java.
synthtool > Replaced '// Generated by the protocol buffer compiler.  DO NOT EDIT!' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/TimestampRangeOrBuilder.java.
synthtool > Replaced '/\\*\n \\* Copyright \\d{4} Google LLC\n \\*\n \\* Licensed under the Apache License, Version 2.0 \\(the "License"\\); you may not use this file except\n \\* in compliance with the License. You may obtain a copy of the License at\n \\*\n \\* http://www.apache.org/licenses/LICENSE-2.0\n \\*\n \\* Unless required by applicable law or agreed to in writing, software distributed under the License\n \\* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n \\* or implied. See the License for the specific language governing permissions and limitations under\n \\* the License.\n \\*/\n' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/proto-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/TableName.java.
synthtool > Replaced 'package com.google.bigtable.v2;' in /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java/grpc-google-cloud-bigtable-v2/src/main/java/com/google/bigtable/v2/BigtableGrpc.java.
synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStub.java.
synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java.
synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableStub.java.
synthtool > Replaced '^(import (?!static).*?\\n)\\n' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableCallableFactory.java.
synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStub.java.
synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java.
synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableStub.java.
synthtool > Replaced '/\\*\\*.+?\\*/\\n(?:^@[^\\n]*\\n)*(?=public [a-zA-B ]*class)' in google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableCallableFactory.java.
synthtool > Running java formatter on 1 files
synthtool > Running java formatter on 51 files
synthtool > Running generator for google/bigtable/admin/artman_bigtableadmin.yaml.
synthtool > Failed executing docker run --name artman-docker --rm -i -e HOST_USER_ID=1000 -e HOST_GROUP_ID=1000 -e RUNNING_IN_ARTMAN_DOCKER=True -v /home/kbuilder/.cache/synthtool/googleapis:/home/kbuilder/.cache/synthtool/googleapis -v /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles:/home/kbuilder/.cache/synthtool/googleapis/artman-genfiles -w /home/kbuilder/.cache/synthtool/googleapis googleapis/artman:latest /bin/bash -c artman --local --config google/bigtable/admin/artman_bigtableadmin.yaml generate java_gapic:

artman> Artman YAML /home/kbuilder/.cache/synthtool/googleapis/google/bigtable/admin/artman_bigtableadmin.yaml is invalid.
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 524, in _ConvertFieldValuePair
    [f.json_name for f in message_descriptor.fields]))
google.protobuf.json_format.ParseError: Message type "googleapis.artman.Artifact" has no field named "proto_path".
 Available Fields(except extensions): ['name', 'apiName', 'apiVersion', 'organizationName', 'releaseLevel', 'srcProtoPaths', 'protoDeps', 'testProtoDeps', 'serviceYaml', 'gapicYaml', 'protoPackage', 'samples', 'grpcServiceConfig', 'type', 'language', 'packageVersion', 'publishTargets', 'discoveryDoc', 'aspect']

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 582, in _ConvertFieldValuePair
    self.ConvertMessage(value, sub_message)
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 481, in ConvertMessage
    self._ConvertFieldValuePair(value, message)
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 592, in _ConvertFieldValuePair
    raise ParseError(str(e))
google.protobuf.json_format.ParseError: Message type "googleapis.artman.Artifact" has no field named "proto_path".
 Available Fields(except extensions): ['name', 'apiName', 'apiVersion', 'organizationName', 'releaseLevel', 'srcProtoPaths', 'protoDeps', 'testProtoDeps', 'serviceYaml', 'gapicYaml', 'protoPackage', 'samples', 'grpcServiceConfig', 'type', 'language', 'packageVersion', 'publishTargets', 'discoveryDoc', 'aspect']

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/artman", line 11, in <module>
    load_entry_point('googleapis-artman', 'console_scripts', 'artman')()
  File "/artman/artman/cli/main.py", line 63, in main
    pipeline_name, pipeline_kwargs = normalize_flags(flags, user_config)
  File "/artman/artman/cli/main.py", line 242, in normalize_flags
    artman_config_path, flags.artifact_name, flags.aspect)
  File "/artman/artman/config/loader.py", line 61, in load_artifact_config
    artman_config = _read_artman_config(artman_config_path)
  File "/artman/artman/config/loader.py", line 109, in _read_artman_config
    artman_config = _parse(artman_yaml_path)
  File "/artman/artman/config/loader.py", line 128, in _parse
    json_format.Parse(artman_config_json_string, config_pb)
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 430, in Parse
    return ParseDict(js, message, ignore_unknown_fields, descriptor_pool)
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 450, in ParseDict
    parser.ConvertMessage(js_dict, message)
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 481, in ConvertMessage
    self._ConvertFieldValuePair(value, message)
  File "/usr/local/lib/python3.5/dist-packages/google/protobuf/json_format.py", line 590, in _ConvertFieldValuePair
    raise ParseError('Failed to parse {0} field: {1}.'.format(name, e))
google.protobuf.json_format.ParseError: Failed to parse common field: Message type "googleapis.artman.Artifact" has no field named "proto_path".
 Available Fields(except extensions): ['name', 'apiName', 'apiVersion', 'organizationName', 'releaseLevel', 'srcProtoPaths', 'protoDeps', 'testProtoDeps', 'serviceYaml', 'gapicYaml', 'protoPackage', 'samples', 'grpcServiceConfig', 'type', 'language', 'packageVersion', 'publishTargets', 'discoveryDoc', 'aspect'].

synthtool > Wrote metadata to synth.metadata.
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.1/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.1/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/synthtool/__main__.py", line 99, in <module>
    main()
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/synthtool/__main__.py", line 91, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 205, in _call_with_frames_removed
  File "/tmpfs/src/git/autosynth/working_repo/synth.py", line 174, in <module>
    main()
  File "/tmpfs/src/git/autosynth/working_repo/synth.py", line 48, in main
    generate_admin_api(gapic, license)
  File "/tmpfs/src/git/autosynth/working_repo/synth.py", line 116, in generate_admin_api
    artman_output_name='')
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/synthtool/gcp/gapic_generator.py", line 64, in java_library
    return self._generate_code(service, version, "java", **kwargs)
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/synthtool/gcp/gapic_generator.py", line 138, in _generate_code
    generator_args=generator_args,
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/synthtool/gcp/artman.py", line 141, in run
    shell.run(cmd, cwd=root_dir)
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/git/autosynth/env/lib/python3.6/site-packages/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.1/lib/python3.6/subprocess.py", line 418, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['docker', 'run', '--name', 'artman-docker', '--rm', '-i', '-e', 'HOST_USER_ID=1000', '-e', 'HOST_GROUP_ID=1000', '-e', 'RUNNING_IN_ARTMAN_DOCKER=True', '-v', '/home/kbuilder/.cache/synthtool/googleapis:/home/kbuilder/.cache/synthtool/googleapis', '-v', '/home/kbuilder/.cache/synthtool/googleapis/artman-genfiles:/home/kbuilder/.cache/synthtool/googleapis/artman-genfiles', '-w', PosixPath('/home/kbuilder/.cache/synthtool/googleapis'), 'googleapis/artman:latest', '/bin/bash', '-c', 'artman --local --config google/bigtable/admin/artman_bigtableadmin.yaml generate java_gapic']' returned non-zero exit status 1.

Synthesis failed

Google internal developers can see the full log here.

Synthesis failed for java-bigtable

Hello! Autosynth couldn't regenerate java-bigtable. ๐Ÿ’”

Here's the output from running synth.py:

2020-05-18 10:02:43,895 autosynth [INFO] > logs will be written to: /tmpfs/src/github/synthtool/logs/googleapis/java-bigtable
2020-05-18 10:02:44,759 autosynth [DEBUG] > Running: git config --global core.excludesfile /home/kbuilder/.autosynth-gitignore
2020-05-18 10:02:44,762 autosynth [DEBUG] > Running: git config user.name yoshi-automation
2020-05-18 10:02:44,765 autosynth [DEBUG] > Running: git config user.email [email protected]
2020-05-18 10:02:44,768 autosynth [DEBUG] > Running: git config push.default simple
2020-05-18 10:02:44,770 autosynth [DEBUG] > Running: git branch -f autosynth
2020-05-18 10:02:44,774 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-05-18 10:02:44,812 autosynth [DEBUG] > Running: git rev-parse --show-toplevel
2020-05-18 10:02:44,816 autosynth [DEBUG] > Running: git log -1 --pretty=%H
2020-05-18 10:02:44,819 autosynth [DEBUG] > Running: git remote get-url origin
2020-05-18 10:02:44,834 synthtool [ERROR] > Failed executing git checkout master:

error: Your local changes to the following files would be overwritten by checkout:
	.bazelrc
Please commit your changes or stash them before you switch branches.
Aborting

2020-05-18 10:02:44,834 autosynth [DEBUG] > Running: git clean -fdx
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 615, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 476, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 576, in _inner_main
    git_source.enumerate_versions(sources, pathlib.Path(temp_dir))
  File "/tmpfs/src/github/synthtool/autosynth/git_source.py", line 166, in enumerate_versions
    source_versions = enumerate_versions_for_source(git_source, temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/git_source.py", line 131, in enumerate_versions_for_source
    local_repo_dir = str(synthtool_git.clone(remote))
  File "/tmpfs/src/github/synthtool/synthtool/sources/git.py", line 85, in clone
    shell.run(["git", "checkout", "master"], cwd=str(dest), check=True)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['git', 'checkout', 'master']' returned non-zero exit status 1.

Google internal developers can see the full log here.

RowCells are not actually serializeable

RowCells might contain UnmodifiableLazyStringList for values, which are not actually serializable.
We need to add custom hooks to RowCell to fix serialization.

The primary issue is that labels are a UnmodifiableLazyStringList, which is not serializeable

Incorrect documentation on regex string comparator about not supporting flags

While comparing HBase and Bigtable and outlining what can be supported, the documentation outlined here: https://cloud.google.com/bigtable/docs/hbase-differences#filters says that BigTable

Supports only the following comparators: RegexStringComparator with no flags and the EQUAL operator

It is possible to set case insensitivity flag using regex function in the library by setting RE2 flag for case insensitive search. (?i)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.