My only question here is whether txn_global->checkpoint_txn can be updated while we are in here? I guess that nothing bad would happen in that case, except that we'd potentially include a newer checkpoint_txn as a lower bound.