[ https://issues.apache.org/jira/browse/IGNITE-22636?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17864937#comment-17864937 ]
Pavel Pereslegin commented on IGNITE-22636: ------------------------------------------- [~korlov], [~mzhuravkov], please review the proposed changes. > 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. Invoke CatalogManager::compactCatalog with Ct on coordinator. > 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)