1. A method of allowing retry to work correctly with parallel nested transactions, the method comprising: when a transaction that is a parallel nested transaction or a child transaction of the parallel nested transaction executes a retry, registering a read set of the transaction for the retry; and when a decision is made to propagate the retry past a parallel nested transaction parent of the transaction, keeping the read set registered and making the read set part of a parent read set.