Skip to content

Full abort on validate failure merging `orElse`.

Ryan Yates requested to merge fryguybob/ghc:wip/T16707 into master

When a validation failure happens in a branch of an orElse, we must abort the entire transaction. Previously, only the branch was aborted. If the validation failure was not a read from the branch, nothing will change by attempting it again. In the future we could consider partial rollback attempts, but we need to account for the TVar use extent to know if the partial rollback includes the read that has been found to be invalid.

Fixes #16707 (closed)

Edited by Ben Gamari

Merge request reports