From 5f85d989b29e67746395012ecfce0a0c324ba77a Mon Sep 17 00:00:00 2001 From: Lauri Peltonen Date: Wed, 17 Feb 2021 09:47:05 +0200 Subject: [PATCH] [2/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS blobs Part 2: Switch to grpc 1.33.1. grpc-java versions 1.27 through 1.32 had a bug where messages could arrive after the call was reported clsoed. In the case of bazel, this meant that in GrpcCacheClient, onNext could be called after onError. This leads to offset bookkeeping getting out of sync, and corrupts the CAS blob download. https://github.com/bazelbuild/bazel/issues/12927 --- distdir_deps.bzl | 12 ++++++------ scripts/bootstrap/compile.sh | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/distdir_deps.bzl b/distdir_deps.bzl index 1739a25c2a3c4a..48b7e4f85e16c8 100644 --- a/distdir_deps.bzl +++ b/distdir_deps.bzl @@ -121,16 +121,16 @@ DIST_DEPS = { ], }, "com_github_grpc_grpc": { - "archive": "v1.32.0.tar.gz", - "sha256": "f880ebeb2ccf0e47721526c10dd97469200e40b5f101a0d9774eb69efa0bd07a", - "strip_prefix": "grpc-1.32.0", + "archive": "v1.33.1.tar.gz", + "sha256": "58eaee5c0f1bd0b92ebe1fa0606ec8f14798500620e7444726afcaf65041cb63", + "strip_prefix": "grpc-1.33.1", "urls": [ - "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.32.0.tar.gz", - "https://github.com/grpc/grpc/archive/v1.32.0.tar.gz", + "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.33.1.tar.gz", + "https://github.com/grpc/grpc/archive/v1.33.1.tar.gz", ], "patch_args": ["-p1"], "patches": [ - "//third_party/grpc:grpc_1.32.0.patch", + "//third_party/grpc:grpc_1.33.1.patch", ], "used_in": [ "additional_distfiles", diff --git a/scripts/bootstrap/compile.sh b/scripts/bootstrap/compile.sh index a674d43d24bbf6..a47a8e90625086 100755 --- a/scripts/bootstrap/compile.sh +++ b/scripts/bootstrap/compile.sh @@ -27,7 +27,7 @@ fi GOOGLE_API_PROTOS="$(grep -o '".*\.proto"' third_party/googleapis/BUILD.bazel | sed 's/"//g' | sed 's|^|third_party/googleapis/|g')" PROTO_FILES=$(find third_party/remoteapis ${GOOGLE_API_PROTOS} third_party/pprof src/main/protobuf src/main/java/com/google/devtools/build/lib/buildeventstream/proto src/main/java/com/google/devtools/build/skyframe src/main/java/com/google/devtools/build/lib/skyframe/proto src/main/java/com/google/devtools/build/lib/bazel/debug src/main/java/com/google/devtools/build/lib/starlarkdebug/proto src/main/java/com/google/devtools/build/lib/packages/metrics/package_metrics.proto -name "*.proto") LIBRARY_JARS=$(find $ADDITIONAL_JARS third_party -name '*.jar' | grep -Fv JavaBuilder | grep -Fv third_party/guava/guava | grep -ve 'third_party/grpc/grpc.*jar' | tr "\n" " ") -GRPC_JAVA_VERSION=1.32.2 +GRPC_JAVA_VERSION=1.33.1 GRPC_LIBRARY_JARS=$(find third_party/grpc -name '*.jar' | grep -e ".*${GRPC_JAVA_VERSION}.*jar" | tr "\n" " ") GUAVA_VERSION=29.0 GUAVA_JARS=$(find third_party/guava -name '*.jar' | grep -e ".*${GUAVA_VERSION}.*jar" | tr "\n" " ")