[
https://issues.apache.org/jira/browse/IGNITE-22636?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pavel Pereslegin updated IGNITE-22636:
--------------------------------------
Description:
Compaction coordinator initiates the process of catalog compaction:
1. Ask each node in logical topology for its minimal required timed (for node_i
let's call this time Tmin_node_i ).
2. Choose minimum required time of Tmin_node_i (let's call it Tmin)
3. Select catalog version Cv with catalog timestamp Ct which Ct < Tmin.
4. Send a command to calls CatalogManager::compactCatalog with Ct to every node.
If Catalog up to version Cv has tables T1, ... Tn, then:
Each compaction initiation run should be postponed (step 4 is not performed),
if at least one node that owns partitions for tables (T1,.., Tn) is missing
from the current logical topology.
-If a remote node leaves the cluster, then:-
-If this node hosts at least one partition, the coordinator should wait until
this node either enters the cluster and then retry asking for Minimal Time, or
is removed from all assignments. In the latter case the absence of the node may
be simply ignored.- (should be done in a separate ticket)
was:
Compaction coordinator initiates the process of catalog compaction:
1. Ask each node in logical topology for its minimal required timed (for node_i
let's call this time Tmin_node_i ).
2. Choose minimum required time of Tmin_node_i (let's call it Tmin)
3. Select catalog version Cv with catalog timestamp Ct which Ct < Tmin.
4. Send a command to calls CatalogManager::compactCatalog with Ct to every node.
If Catalog up to version Cv has tables T1, ... Tn, then:
Each compaction initiation run should be postponed (step 4 is not performed),
if at least one node that owns partitions for tables (T1,.., Tn) is missing
from the current logical topology.
-If a remote node leaves the cluster, then:-
-If this node hosts at least one partition, the coordinator should wait until
this node either enters the cluster and then retry asking for Minimal Time, or
is removed from all assignments. In the latter case the absence of the node may
be simply ignored.-
(should be done in a separate ticket)
> Catalog compaction. Implement catalog compaction coordinator.
> -------------------------------------------------------------
>
> Key: IGNITE-22636
> URL: https://issues.apache.org/jira/browse/IGNITE-22636
> Project: Ignite
> Issue Type: Improvement
> Reporter: Maksim Zhuravkov
> Assignee: Pavel Pereslegin
> Priority: Major
> Labels: ignite-3
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Compaction coordinator initiates the process of catalog compaction:
> 1. Ask each node in logical topology for its minimal required timed (for
> node_i let's call this time Tmin_node_i ).
> 2. Choose minimum required time of Tmin_node_i (let's call it Tmin)
> 3. Select catalog version Cv with catalog timestamp Ct which Ct < Tmin.
> 4. Send a command to calls CatalogManager::compactCatalog with Ct to every
> node.
> If Catalog up to version Cv has tables T1, ... Tn, then:
> Each compaction initiation run should be postponed (step 4 is not performed),
> if at least one node that owns partitions for tables (T1,.., Tn) is missing
> from the current logical topology.
> -If a remote node leaves the cluster, then:-
> -If this node hosts at least one partition, the coordinator should wait until
> this node either enters the cluster and then retry asking for Minimal Time,
> or is removed from all assignments. In the latter case the absence of the
> node may be simply ignored.- (should be done in a separate ticket)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)