Is retry-using STM action guaranteed interruptible in GHC / Haskell?

89 views Asked by At

In https://hackage.haskell.org/package/base-4.19.1.0/docs/Control-Exception.html#interruptible, we have the guarantee that

STM transactions that do not use retry [..] are guaranteed not to be interruptible

But what about the converse - I have an STM operation using retry that I desire to be interruptible (at least when it encounters the retry).

So, strictly reading the guarantee, it is allowed for GHC to keep that retry-using STM action non-interruptible. But does it?

(Edited: I mis-attributed some non-delivery of an interrupt due to the retry-ing STM action not getting interrupted, when in fact I had an earlier leaky interruption point that got interrupted. So in the end, the retry-ing (and orElse-less, see comment from @Taren) STM action was interruptible as expected).

0

There are 0 answers