[
https://issues.apache.org/jira/browse/IGNITE-22620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mikhail Efremov updated IGNITE-22620:
-------------------------------------
Fix Version/s: 3.1
> Implement ReplicaSafeTimeSyncRequest processing for zone replica
> ----------------------------------------------------------------
>
> Key: IGNITE-22620
> URL: https://issues.apache.org/jira/browse/IGNITE-22620
> Project: Ignite
> Issue Type: Improvement
> Reporter: Kirill Gusakov
> Assignee: Mikhail Efremov
> Priority: Major
> Labels: ignite-3
> Fix For: 3.1
>
> Time Spent: 4h 40m
> Remaining Estimate: 0h
>
> h3. Motivation
> Within colocation track we should reasonably move table-not-specific requests
> and commands processing from PartitionReplicaListener and PartitionListener
> to ZonePartitionReplicaListener and ZonePartitionRaftListener.
> ReplicaSafeTimeSyncRequest is one of such requests to be moved.
> A bit of a context: ReplicaSafeTimeSyncRequest is used in order to move safe
> time on partition if there's no load, meaning in idle case.
> h3. Definition of Done
> * Safe time on zone partition is adjusted on idle cluster.
> h3. Implementation Notes
> * Add clockService to ZonePartitionReplicaListener.
> * Copy PartitionReplicaListener#processReplicaSafeTimeSyncRequest along with
> corresponding trigger to ZonePartitionReplicaListener.
> * Hide originalPartitionReplicaListener#processReplicaSafeTimeSyncRequest
> under colocation feature flag.
> * Copy PartitionListener#handleSafeTimeSyncCommand to
> ZonePartitionRaftListener. I guess that it's the most tricky part here,
> because we will need to advance safeTime and index consistently in _all_ data
> storages (meaning for all tables) of a zone.
> ** I believe that we may change advanceLastAppliedIndexConsistently from
> private to public and call it for all tableProcessors that we have in
> ZonePartitionReplicaListener for specific zone.
> ** Besides that we may move 'if (commandIndex <=
> storage.lastAppliedIndex())' from handleSafeTimeSyncCommand to
> advanceLastAppliedIndexConsistently.
> * Add corresponding test.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)