tweag/rules_haskell

Flag --incompatible_disable_starlark_host_transitions will break rules_haskell in Bazel 7.0

keertk opened this issue · 4 comments

Incompatible flag --incompatible_disable_starlark_host_transitions will be enabled by default in the next major release (Bazel 7.0), thus breaking rules_haskell. Please migrate to fix this and unblock the flip of this flag.

The flag is documented here: bazelbuild/bazel#17032.

Please check the following CI builds for build and test results:

Never heard of incompatible flags before? We have documentation that explains everything.
If you have any questions, please file an issue in https://github.com/bazelbuild/continuous-integration.

Hi @ylecornec, Can you share any significant update on this issue. Thanks!

Hi @sgowroji, PRs #1909 and #1911 should fix the issue once they are merged (the second one enables --incompatible_disable_starlark_host_transitions with bazel 6 in the CI).

Hi @ylecornec, We are still seeing few failures for the above incompatible flag in the pipeline. Can you please have a look Thanks!



java.io.IOException: compressed write incomplete: committed_size 7678 is neither -1 nor total 7735 - projects/bazel-untrusted/instances/default_instance/uploads/f2484d1f-614f-4cac-85e3-ab718f697daf/compressed-blobs/zstd/d3aa02691d6ea1549343ae46b8049092e322d674baac2aff33dfb362b2f915ab/7678
--
  | at com.google.devtools.build.lib.remote.ByteStreamUploader$AsyncUpload.checkCommittedSize(ByteStreamUploader.java:334)
  | at com.google.devtools.build.lib.remote.ByteStreamUploader$AsyncUpload.lambda$start$1(ByteStreamUploader.java:306)
  | at com.google.common.util.concurrent.AbstractTransformFuture$AsyncTransformFuture.doTransform(AbstractTransformFuture.java:221)
  | at com.google.common.util.concurrent.AbstractTransformFuture$AsyncTransformFuture.doTransform(AbstractTransformFuture.java:208)
  | at com.google.common.util.concurrent.AbstractTransformFuture.run(AbstractTransformFuture.java:122)
  | at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
  | at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1270)
  | at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1038)
  | at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:783)
  | at com.google.common.util.concurrent.AbstractCatchingFuture.run(AbstractCatchingFuture.java:119)
  | at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
  | at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1270)
  | at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1038)
  | at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:783)
  | at com.google.common.util.concurrent.AbstractCatchingFuture.run(AbstractCatchingFuture.java:119)
  | at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
  | at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1270)
  | at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1038)
  | at com.google.common.util.concurrent.AbstractFuture.setFuture(AbstractFuture.java:851)
  | at com.google.common.util.concurrent.AbstractTransformFuture$AsyncTransformFuture.setResult(AbstractTransformFuture.java:232)
  | at com.google.common.util.concurrent.AbstractTransformFuture$AsyncTransformFuture.setResult(AbstractTransformFuture.java:208)
  | at com.google.common.util.concurrent.AbstractTransformFuture.run(AbstractTransformFuture.java:167)
  | at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
  | at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1270)
  | at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1038)
  | at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:783)
  | at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:49)
  | at com.google.devtools.build.lib.remote.util.RxFutures$2.onSuccess(RxFutures.java:251)
  | at io.reactivex.rxjava3.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onSuccess(SingleFlatMap.java:112)
  | at io.reactivex.rxjava3.internal.operators.single.SingleUsing$UsingSingleObserver.onSuccess(SingleUsing.java:154)
  | at io.reactivex.rxjava3.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:68)
  | at com.google.devtools.build.lib.remote.util.RxFutures$OnceSingleOnSubscribe$1.onSuccess(RxFutures.java:155)
  | at com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1138)
  | at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
  | at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1270)
  | at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1038)
  | at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:783)
  | at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:49)
  | at com.google.devtools.build.lib.remote.ByteStreamUploader$Writer.onCompleted(ByteStreamUploader.java:526)
  | at io.grpc.stub.ClientCalls$StreamObserverToCallListenerAdapter.onClose(ClientCalls.java:485)
  | at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:562)
  | at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:70)
  | at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:743)
  | at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:722)
  | at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
  | at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
  | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
  | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
  | at java.base/java.lang.Thread.run(Unknown Source)
  | (01:27:43) Loading: 173 packages loaded


avdv commented

Hi @sgowroji. How is this IOException related to the incompatible flag? Also the CI run you linked to seems to be green.