[ 
https://issues.apache.org/jira/browse/IGNITE-22637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavel Pereslegin updated IGNITE-22637:
--------------------------------------
    Description: 
To select a compaction time, each node should provide its MinimalRequiredTime 
to compaction coordinator. To compute that time:

1. Get current value of low watermark.
2. Get min of check pointed time across all partitions.
3. Get min of begin_time across all started transaction.
4. Take min of 1., 2., 3.

begin_time transaction time (3) is stored in transient state of the 
PartitionListener.
During checkpoint we write that time into the raft log.

When the compaction coordinator chooses min catalog version/catalog time, it 
sends a catalog compaction command with this information to each node. Each 
node should execute such command to perform compaction.




  was:
To select a compaction time, each node should provide its MinimalRequiredTime 
to compaction coordinator. To compute that time:

1. Get current value of low watermark.
2. Get min of check pointed time across all partitions.
3. Get min of begin_time across all started transaction.
4. Take min of 1., 2., 3.

begin_time transaction time (3) is stored in transient state of the 
PartitionReplicaListener.
During checkpoint we write that time into the raft log.

When the compaction coordinator chooses min catalog version/catalog time, it 
sends a catalog compaction command with this information to each node. Each 
node should execute such command to perform compaction.





> Catalog compaction. Implement remote node part of compaction flow
> -----------------------------------------------------------------
>
>                 Key: IGNITE-22637
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22637
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Maksim Zhuravkov
>            Priority: Major
>              Labels: ignite-3
>
> To select a compaction time, each node should provide its MinimalRequiredTime 
> to compaction coordinator. To compute that time:
> 1. Get current value of low watermark.
> 2. Get min of check pointed time across all partitions.
> 3. Get min of begin_time across all started transaction.
> 4. Take min of 1., 2., 3.
> begin_time transaction time (3) is stored in transient state of the 
> PartitionListener.
> During checkpoint we write that time into the raft log.
> When the compaction coordinator chooses min catalog version/catalog time, it 
> sends a catalog compaction command with this information to each node. Each 
> node should execute such command to perform compaction.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to