> > Reducing the time between reading max(changeID in DB) and transaction > commit will reduce the chance of key conflict. That is the whole point of > re-order the blocks. >
Why would this affect anything? Whenever you read max(changeID) inside a transaction you should get exactly the same value since we are using repeatable-read transaction isolation level. You will get the value at the start of the transaction, not at the time you read it.