Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Motivation
According to ascherbakov is useful to rework tx cleanup flow in a following way:
- Instead of using PendingRows retrieve rowIds from `org.apache.ignite.internal.tx.impl.HeapLockManager#txMap`. Thus, org.apache.ignite.internal.table.distributed.replicator.PendingRows should be removed.
- It also means that Excessive full partition scan on node start will be resolved. It worth mentioning that now it's safe to eliminate pendingRows population on start because we have full lazy write intent resolution.
- Besides retrieving rowIds from HeapLockManager#txMap it's also possible to get partitionId from rowId, thus we may remove `org.apache.ignite.internal.tx.message.TxCleanupMessage#groups`.
Definition of Done
- org.apache.ignite.internal.tx.message.TxCleanupMessage#group is removed.
- On receiving TxCleanupMessage node retrieves rowIds from within `org.apache.ignite.internal.tx.impl.HeapLockManager#txMap` group them by RowId#partitionId and sends local writeIntentSwitchReplicaRequest.
- org.apache.ignite.internal.table.distributed.replicator.PendingRow is removed.
- `Excessive full partition scan on node start` that was used to populate PendingRow also removed. Corresponding ticket is closed.
Attachments
Issue Links
- contains
-
IGNITE-18502 Excessive full partition scan on node start
- Resolved