Bug in STM with data invariants