tree afc84ec17e99469a5f0018b55b0d30de240b0d35
parent d37762b494a4e122d46a5a71e3a8cc77fa15aa25
author Fabian Meumertzheim <fabian@meumertzhe.im> 1713774998 -0700
committer Copybara-Service <copybara-worker@google.com> 1713775104 -0700

Deflake remote tests by setting an `OnCancelHandler`

Found to fix flaky local behavior of remote tests when invoking `bazel shutdown`:
```
Load240418 11:57:38.114:XT 85 [com.google.devtools.build.remote.worker.ExecutionServer.lambda$waitExecution$1] Work failed: 9bcaa872-d921-4889-a762-66c242993c59
io.grpc.StatusRuntimeException: CANCELLED: call already cancelled. Use ServerCallStreamObserver.setOnCancelHandler() to disable this exception
	at io.grpc.Status.asRuntimeException(Status.java:526)
	at io.grpc.stub.ServerCalls$ServerCallStreamObserverImpl.onNext(ServerCalls.java:366)
	at com.google.devtools.build.remote.worker.ExecutionServer.lambda$waitExecution$1(ExecutionServer.java:171)
	at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
	at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1298)
	at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1059)
	at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:784)
	at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.afterRanInterruptiblySuccess(TrustedListenableFutureTask.java:136)
	at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:89)
	at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.lang.Thread.run(Thread.java:1583)
```

Closes #22049.

PiperOrigin-RevId: 626953580
Change-Id: Id914dfd77496a50427f59638bd81794f021b9425
