profile
viewpoint
BenWhitehead BenWhitehead Google New York City, New York

BenWhitehead/bootstrap-big-grid 76

A set of larger grid options for Bootstrap.

BenWhitehead/finch-server 23

Some base classes and configuration used for making a server using finch

BenWhitehead/angular-animate-less-mixins 6

As set of less mixins for angular's animation support built on Bootstrap's css animation mixins.

BenWhitehead/.dotfiles 1

My Collection of dot files for various applications

BenWhitehead/docker-httpie-jq 1

Simple docker image with httpie and jq installed

BenWhitehead/finagle-gw2-client 1

A Scala finagle based client for the Guild Wars 2 API

BenWhitehead/beam 0

Apache Beam is a unified programming model for Batch and Streaming

BenWhitehead/cassandra-mesos 0

Cassandra on Mesos

delete branch googleapis/java-storage

delete branch : release-please--branches--main

delete time in a day

PR merged googleapis/java-storage

chore(main): release 2.3.1-SNAPSHOT api: storage

:robot: I have created a release beep boop

Updating meta-information for bleeding-edge SNAPSHOT release.


This PR was generated with Release Please. See documentation.

+17 -17

0 comment

6 changed files

release-please[bot]

pr closed time in a day

push eventgoogleapis/java-storage

release-please[bot]

commit sha 4b9634966e7a5efdbd22ff3d2d4d26f29e2360ac

chore(main): release 2.3.1-SNAPSHOT (#1208) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>

view details

push time in a day

PullRequestReviewEvent

push eventgoogleapis/java-storage-nio

WhiteSource Renovate

commit sha e822be5c411420c79ead2276904126b8e3ad022f

deps: update dependency com.google.cloud:google-cloud-storage to v2.3.0 (#796)

view details

push time in a day

PR merged googleapis/java-storage-nio

deps: update dependency com.google.cloud:google-cloud-storage to v2.3.0 api: storage

WhiteSource Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
com.google.cloud:google-cloud-storage 2.2.3 -> 2.3.0 age adoption passing confidence

Release Notes

<details> <summary>googleapis/java-storage</summary>

v2.3.0

Compare Source

Features
Bug Fixes
Dependencies
2.2.3 (2022-01-07)
Bug Fixes
  • do not cause a failure when encountering no bindings (#​1177) (16c2aef)
  • java: add -ntp flag to native image testing command (#​1169) (b8a6395)
  • update retry handling to retry idempotent requests that encounter unexpected EOF while parsing json responses (#​1155) (8fbe6ef)
Documentation
Dependencies
  • update dependency com.google.cloud:google-cloud-shared-dependencies to v2.6.0 (#​1191) (3b384cf)
  • update dependency org.apache.httpcomponents:httpcore to v4.4.15 (#​1171) (57f7a74)
2.2.2 (2021-12-06)
Bug Fixes
  • update StorageOptions to not overwrite any previously set host (#​1142) (05375c0)
Documentation
  • Add comments to GCS gRPC API proto spec to describe how naming work (#​1139) (417c525)
Dependencies
  • update dependency com.google.apis:google-api-services-storage to v1-rev20211201-1.32.1 (#​1165) (9031836)
  • update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.1 (#​1163) (feca2c6)
  • update kms.version to v0.94.0 (#​1164) (8653783)
2.2.1 (2021-11-15)
Dependencies
  • update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.0 (#​1146) (a5d13a9)

</details>


Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by WhiteSource Renovate. View repository job log here.

+1 -1

0 comment

1 changed file

renovate-bot

pr closed time in a day

PullRequestReviewEvent

Pull request review commentgoogleapis/java-storage

feat: allow limiting ReadChannel

+/*+ * Copyright 2021 Google LLC+ *+ * Licensed under the Apache License, Version 2.0 (the "License");+ * you may not use this file except in compliance with the License.+ * You may obtain a copy of the License at+ *+ *       http://www.apache.org/licenses/LICENSE-2.0+ *+ * Unless required by applicable law or agreed to in writing, software+ * distributed under the License is distributed on an "AS IS" BASIS,+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.+ * See the License for the specific language governing permissions and+ * limitations under the License.+ */++package com.google.cloud.storage.it;++import static com.google.common.truth.Truth.assertThat;++import com.google.cloud.NoCredentials;+import com.google.cloud.ReadChannel;+import com.google.cloud.WriteChannel;+import com.google.cloud.storage.BlobInfo;+import com.google.cloud.storage.Bucket;+import com.google.cloud.storage.BucketInfo;+import com.google.cloud.storage.DataGeneration;+import com.google.cloud.storage.LimitableReadChannel;+import com.google.cloud.storage.Storage;+import com.google.cloud.storage.StorageOptions;+import com.google.cloud.storage.conformance.retry.TestBench;+import java.io.IOException;+import java.nio.ByteBuffer;+import java.util.Random;+import org.junit.ClassRule;+import org.junit.Rule;+import org.junit.Test;+import org.junit.rules.TestName;++public final class ITBlobReadChannelTest {++  private static final int _16MiB = 16 * 1024 * 1024;+  private static final int _256KiB = 256 * 1024;++  @ClassRule+  public static final TestBench testBench =+      TestBench.newBuilder().setContainerName("blob-read-channel-test").build();++  @Rule public final TestName testName = new TestName();++  @Rule public final DataGeneration dataGeneration = new DataGeneration(new Random(872364872));++  @Test+  public void testLimit_smallerThanOneChunk() throws IOException {+    int srcContentSize = _256KiB;+    int rangeBegin = 57;+    int rangeEnd = 2384;+    int chunkSize = _16MiB;+    doLimitTest(srcContentSize, rangeBegin, rangeEnd, chunkSize);+  }++  @Test+  public void testLimit_largerThanOneChunk() throws IOException {+    int srcContentSize = _16MiB + (_256KiB * 3);+    int rangeBegin = 384;+    int rangeEnd = rangeBegin + _16MiB;+    int chunkSize = _16MiB;++    doLimitTest(srcContentSize, rangeBegin, rangeEnd, chunkSize);+  }++  private void doLimitTest(int srcContentSize, int rangeBegin, int rangeEnd, int chunkSize)+      throws IOException {+    Storage s =+        StorageOptions.newBuilder()+            .setProjectId("blob-read-channel-test")+            .setHost(testBench.getBaseUri())+            .setCredentials(NoCredentials.getInstance())+            .build()+            .getService();++    Bucket bucket = s.create(BucketInfo.of("bucket"));+    BlobInfo src =+        BlobInfo.newBuilder(bucket, String.format("%s/src", testName.getMethodName())).build();+    ByteBuffer content = dataGeneration.randByteBuffer(srcContentSize);+    ByteBuffer expectedSubContent = content.duplicate();+    expectedSubContent.position(rangeBegin);+    expectedSubContent.limit(rangeEnd);+    try (WriteChannel writer = s.writer(src)) {+      writer.write(content);+    }++    ByteBuffer actual = ByteBuffer.allocate(rangeEnd - rangeBegin);++    try (ReadChannel reader = s.reader(src.getBlobId())) {

Investigate if it's possible (binary & source compatibility) to directly return, instead of down-casting.

BenWhitehead

comment created time in a day

PullRequestReviewEvent

issue closedgoogleapis/gcs-resumable-upload

end to end: should resume an interrupted upload failed

Note: #464 was also for this test, but it was closed more than 10 days ago. So, I didn't mark it flaky.


commit: f822cf602c5c5f19e8436b41e3ba56d6eb16a073 buildURL: Build Status, Sponge status: failed <details><summary>Test output</summary><br><pre>done() called multiple times in test <end to end should resume an interrupted upload> of file /workspace/build/system-test/kitchen.js Error: done() called multiple times in test <end to end should resume an interrupted upload> of file /workspace/build/system-test/kitchen.js at /workspace/build/system-test/kitchen.js:79:25 -> /workspace/system-test/kitchen.ts:99:15 at Upload.responseHandler (build/src/index.js:518:18) -> /workspace/src/index.ts:852:12 at Upload.<anonymous> (build/src/index.js:442:18) -> /workspace/src/index.ts:768:12 at Upload.onResponse (build/src/index.js:687:14) -> /workspace/src/index.ts:1065:10 at Upload.makeRequestStream (build/src/index.js:639:14) -> /workspace/src/index.ts:1005:10 at runMicrotasks (<anonymous>) at processTicksAndRejections (internal/process/task_queues.js:97:5) at async Upload.startUploading (build/src/index.js:466:13) -> /workspace/src/index.ts:794:7</pre></details>

closed time in a day

flaky-bot[bot]

Pull request review commentGoogleCloudDataproc/hadoop-connectors

Also retry on request timeout from server

 public CredentialOrBackoffResponseHandler() {       errorCodeHandler.setBackOffRequired(           response ->               BASE_HTTP_BACKOFF_REQUIRED.isRequired(response)-                  || response.getStatusCode() == HTTP_SC_TOO_MANY_REQUESTS);+                  || response.getStatusCode() == HTTP_SC_TOO_MANY_REQUESTS+                  || response.getStatusCode() == HTTP_REQUEST_TIMEOUT);

Correct google-api-services-storage is the Discovery doc based automatically generated JSON client (aka Apiary client) (google-cloud-storage also uses this for the majority of it's RPCs) which doesn't have any automatic retry AFAIK, something like a request interceptor or request initializer is what would need to be leveraged to have the Apiary client perform multiple attempts. In google-cloud-storage we handle retries at a higher level as some of our RPCs are out of band of the apiary client.

Any links to code from google-cloud-storage are intended to be purely informational to show how that client has approached retry handling for some cases. The https://cloud.google.com/storage/docs/retry-strategy#idempotency doc is the general public which serves as a guide for anyone doing client level work against gcs (including the google-cloud-storage team as well as other customers).

Deependra-Patel

comment created time in 5 days

PullRequestReviewEvent

issue commentgoogleapis/java-storage

test(retry): test failures detected by shuffling test order

We haven't seen this happening since #1100 merged, going to count this addressed.

BenWhitehead

comment created time in 5 days

issue closedgoogleapis/java-datastore

Upgrade easymock version when support for java7 is dropped

Follow up to original upgrade proposed in #9

closed time in 5 days

BenWhitehead

Pull request review commentGoogleCloudDataproc/hadoop-connectors

Also retry on request timeout from server

 public CredentialOrBackoffResponseHandler() {       errorCodeHandler.setBackOffRequired(           response ->               BASE_HTTP_BACKOFF_REQUIRED.isRequired(response)-                  || response.getStatusCode() == HTTP_SC_TOO_MANY_REQUESTS);+                  || response.getStatusCode() == HTTP_SC_TOO_MANY_REQUESTS+                  || response.getStatusCode() == HTTP_REQUEST_TIMEOUT);

This is correct. Not all GCS operations neatly fit into the standard HTTP idempotency conventions, in some cases extra parameters need to be taken into account to determine if a request is idempotent.

These docs https://cloud.google.com/storage/docs/retry-strategy#idempotency give a good overview of some of the specifics.

Deependra-Patel

comment created time in 6 days

PullRequestReviewEvent

Pull request review commentgoogleapis/java-logging-logback

feat: add support for metadata auto-population and redirection to STDOUT

 import static org.easymock.EasyMock.expectLastCall; import static org.easymock.EasyMock.replay; import static org.easymock.EasyMock.verify;-import static org.junit.Assert.fail;  import ch.qos.logback.classic.Level; import ch.qos.logback.classic.filter.ThresholdFilter; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.classic.spi.LoggingEvent;+import com.google.api.client.util.Strings;

This line is what is adding the new warning

[INFO] --- maven-dependency-plugin:3.1.2:analyze (default-cli) @ google-cloud-logging-logback ---
[WARNING] Used undeclared dependencies found:
[WARNING]    com.google.http-client:google-http-client:jar:1.41.0:compile

Found by running:

$ fgrep 'com.google.api.client'
test/java/com/google/cloud/logging/logback/LoggingAppenderTest.java:30:import com.google.api.client.util.Strings;
minherz

comment created time in 7 days

PullRequestReviewEvent

push eventgoogleapis/java-conformance-tests

Jeff Ching

commit sha ebbe49d3596567b6e03e0f63fb71ed7025b850d7

chore(main): release 0.2.7-SNAPSHOT (#430)

view details

push time in 8 days

PR merged googleapis/java-conformance-tests

chore(main): release 0.2.7-SNAPSHOT

:robot: I have created a release beep boop

Updating meta-information for bleeding-edge SNAPSHOT release.


This PR was generated with Release Please. See documentation.

+2 -2

0 comment

2 changed files

chingor13

pr closed time in 8 days

PullRequestReviewEvent

push eventBenWhitehead/java-storage

JesseLovelace

commit sha 5a160eee2b80e3d392df9d73dfc30ca9cd665764

fix: Remove all client side validation for OLM, allow nonspecific lif… (#1160) * fix: Remove all client side validation for OLM, allow nonspecific lifecycle actions * Test unsupported actions * address comments * Fix clirr * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * checkstyle Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>

view details

Neenu Shaji

commit sha eea9e442a023539efe0b406af34d3dc527d419c4

chore: change name to api_shortname in .repo-metadata.json (#1200)

view details

gcf-owl-bot[bot]

commit sha 0147fdf4b370c865cd27585ddfcc1eb5387653e1

chore(java): update variable name to api_shortname in README template (#1323) (#1202)

view details

WhiteSource Renovate

commit sha 189abea861f21fb812001489067cebabd068f5ab

test(deps): update dependency com.google.cloud:google-cloud-conformance-tests to v0.2.6 (#1197)

view details

WhiteSource Renovate

commit sha a1a8e13b1435897f7726bcdf815bf8ed27aa1c64

chore(deps): update dependency com.google.cloud:google-cloud-storage to v2.2.3 (#1196) * chore(deps): update dependency com.google.cloud:google-cloud-storage to v2.2.3 * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>

view details

WhiteSource Renovate

commit sha 7e25c86a80a12ae423d86b067bddc16f4c2d1c16

test(deps): update dependency org.objenesis:objenesis to v3 (#1199)

view details

WhiteSource Renovate

commit sha 558520f35ed64f0b36f7f8ada4491023a0fb759e

deps: update dependency org.easymock:easymock to v4 (#1198)

view details

WhiteSource Renovate

commit sha af11cf8f1fcdc439aa0d6db4c3ed6455fdbb84eb

build(deps): update dependency com.google.cloud:google-cloud-shared-config to v1.2.5 (#1203)

view details

WhiteSource Renovate

commit sha ece0fe5ee43027c41655a60380885320da5e1a06

chore(deps): update dependency com.google.cloud:libraries-bom to v24.2.0 (#1204) * chore(deps): update dependency com.google.cloud:libraries-bom to v24.2.0 * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * chore: make hmac key cleanup more robust Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: BenWhitehead <BenWhitehead@users.noreply.github.com>

view details

push time in 8 days

push eventgoogleapis/java-storage

WhiteSource Renovate

commit sha ece0fe5ee43027c41655a60380885320da5e1a06

chore(deps): update dependency com.google.cloud:libraries-bom to v24.2.0 (#1204) * chore(deps): update dependency com.google.cloud:libraries-bom to v24.2.0 * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * chore: make hmac key cleanup more robust Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: BenWhitehead <BenWhitehead@users.noreply.github.com>

view details

push time in 8 days

PR merged googleapis/java-storage

chore(deps): update dependency com.google.cloud:libraries-bom to v24.2.0 api: storage

WhiteSource Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
com.google.cloud:libraries-bom 24.1.2 -> 24.2.0 age adoption passing confidence

Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Renovate will not automatically rebase this PR, because other commits have been found.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by WhiteSource Renovate. View repository job log here.

+20 -8

0 comment

3 changed files

renovate-bot

pr closed time in 8 days

push eventrenovate-bot/java-storage

BenWhitehead

commit sha 0ed39cb1fcb5bd38ea3da377666dd3b98378efc4

chore: make hmac key cleanup more robust

view details

push time in 8 days

push eventgoogleapis/java-storage

WhiteSource Renovate

commit sha af11cf8f1fcdc439aa0d6db4c3ed6455fdbb84eb

build(deps): update dependency com.google.cloud:google-cloud-shared-config to v1.2.5 (#1203)

view details

push time in 8 days

PR merged googleapis/java-storage

build(deps): update dependency com.google.cloud:google-cloud-shared-config to v1.2.5 api: storage

WhiteSource Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
com.google.cloud:google-cloud-shared-config 1.2.4 -> 1.2.5 age adoption passing confidence

Release Notes

<details> <summary>googleapis/java-shared-config</summary>

v1.2.5

Compare Source

</details>


Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by WhiteSource Renovate. View repository job log here.

+1 -1

0 comment

1 changed file

renovate-bot

pr closed time in 8 days

PullRequestReviewEvent
more