Use generation numbers to avoid polling global transaction state if nothing has changed.