When running buck2 against an RBE that sits behind a Layer 7 loadbalancer, the build fails
Starting new buck2 daemon...
Connected to new buck2 daemon.
2026-04-15T18:44:53.916121Z WARN buck2_execute_impl::executors::caching: Cache upload for `ec491bde7959081a8c607a31c5bc61b624b75eb0386ee3db8c9d1ee284962596:141` failed: Error uploading outputs: Remote Execution Error on upload_files_and_directories for ReSession GRPC-SESSION-ID
Error: (status: Cancelled, message: "operation was canceled", details: [], metadata: MetadataMap { headers: {} }: transport error: operation was canceled: connection closed)
Build ID: 4f3e9a87-13d7-457a-90dd-f96d0800fc82
Network: Up: 1.4MiB Down: 1.2MiB (GRPC-SESSION-ID)
Loading targets. Remaining 0/2 1069 dirs read, 2001 targets declared
Analyzing targets. Remaining 0/2001 2000 actions, 2000 artifacts declared
Executing actions. Remaining 0/2000 5:32.6s exec time total
Command: build. Finished 1001 local, 999 cache (50% hit) 2:42.1s exec time cached (48%)
Time elapsed: 18.4s
[2026-04-15T19:45:02.416+01:00] 2026-04-15T18:45:02.399549Z WARN buck2_execute_impl::executors::caching: Cache upload for `4972b28004e03eccb1e40cb1c2d6e79ba7d82e9f39c9b5141fa0db4168ddf429:141` failed: Remote Execution Error on write_action_result for ReSession GRPC-SESSION-ID
[2026-04-15T19:45:02.416+01:00] Error: (status: Cancelled, message: "operation was canceled", details: [], metadata: MetadataMap { headers: {} }: transport error: operation was canceled: connection closed)
BUILD FAILED
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1152__/out.txt`
1: Error materializing files declared by action: dc784efe00d778d78397c90251c09af5e4461598384790e966a639b51df4d22c:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1268__/out.txt`
1: Error materializing files declared by action: 9b4a2993287cefb20d6c5596aff6ee14d13ad666b71c42b7e1ef219530d3809b:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_139__/out.txt`
1: Error materializing files declared by action: 05d384d4e79f6198315cc3961b461d37d9ff28c6b994b2c76aedb521d006f07b:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1529__/out.txt`
1: Error materializing files declared by action: d6937dc51fbc413096034d2e4f14e233649ae1f598bcdf65c66a165e60f0aae7:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1564__/out.txt`
1: Error materializing files declared by action: e851d39782d2f57c3656676b395c8f8e302d34793256510cb9ea7c433542067f:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1611__/out.txt`
1: Error materializing files declared by action: 4d7f96fb41180c70c64d80661501fdf81a50b00ce1d6102f58cb2530e7b09af6:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1731__/out.txt`
1: Error materializing files declared by action: ce75c3cbbc68474579d440105a941783838f6c4519de010ab5bfd94ff9d19ca1:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1754__/out.txt`
1: Error materializing files declared by action: 16f255d4b938dde7fe8ad481bc03befe49ce0b9e694c4a529a68244d91f99d57:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_1848__/out.txt`
1: Error materializing files declared by action: 65e698bd2354a548bf086a56f3ea96976fc94d4188324b006651cd1765582495:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_323__/out.txt`
1: Error materializing files declared by action: f819a6b6a71bfce420c70d5e0f4160bf29bc9ec7b36d7529c5131177c9bab810:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_465__/out.txt`
1: Error materializing files declared by action: d609671d0908aad7fa912652245d3936ab3fbbc21f1a60e11f383f021bf8cab3:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_521__/out.txt`
1: Error materializing files declared by action: 183243dc80f409ca5f2970bc7a89930e97b28b728bbcefa925216c1e5e1f1f23:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_523__/out.txt`
1: Error materializing files declared by action: 32134c9b7dbfad4ff9832a533133a2f8590e819aded8b98166ef10800306b2b2:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
Failed to materialize artifacts
Caused by:
0: Error materializing artifact at path `buck-out/v2/gen/root/1ef78538d8598cb2/__target_589__/out.txt`
1: Error materializing files declared by action: b7409e3cfd2c888c0e4b3623a6e61e50d7209e296c662d3d50f6a6478fd303a4:141 retrieved 0 seconds ago with ttl = 0 seconds, re_use_case = buck2-default
2: Remote Execution Error on materialize_files for ReSession GRPC-SESSION-ID
Error: (Failed to make BatchReadBlobs request: status: Internal, message: "h2 protocol error: http2 error", details: [], metadata: MetadataMap { headers: {} }: transport error: http2 error: connection error received: not a result of an error)
When running buck2 against an RBE that sits behind a Layer 7 loadbalancer, the build fails
I have a reproducer here: https://github.com/arianvp/buck2-grpc-reproducer
Seems to be caused by grpc/grpc-rust#2185
Which has a potential fix in the comments