Description
When executing an RO transaction, readTimestamp has to be determined. If MaxObservableTimestamp is not available (which is currently true after a DDL), then TxManagerImpl takes readTimestamp as HLC.now() - idleSafeTimePropagationPeriod - MaxClockSkew.
In IGNITE-20668, an additional wait after a DDL operation was added to make sure that a readTimestamp calculated in this way does not look before the DDL (otherwise, the RO would see the previous schema). But in IGNITE-20668, only idleSafeTimePropagationPeriod was added after a DDL, and MaxClockSkew component was forgotten.
We must add MaxClockSkew to the wait.
Attachments
Attachments
Issue Links
- is related to
-
IGNITE-20668 Increase wait after a DDL to account for idle safe-time propagation period
- Resolved
-
IGNITE-21084 Account for differences of logical part of now() on different nodes when waiting after a DDL
- Resolved
- links to