You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Semyon Danilov (Jira)" <ji...@apache.org> on 2023/05/04 15:14:00 UTC

[jira] [Updated] (IGNITE-14734) Implement compaction functionality management for meta storage.

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

Semyon Danilov updated IGNITE-14734:
------------------------------------
    Description: 
At present {{SimpleInMemoryKeyValueStorage}} already has compaction functionality but it is question: who and when should invoke {{compact}} method.
h3. Upd:
 * It's still an open question: who and when should invoke {{compact}} method.
 * Besides that, it's required to fix storage compaction - IGNITE-16444
 * Seems that we, might reuse inner ms cursors meta in order to prevent compaction of cursors over witch we are currently iterating.
 * It's still however possible that revision-based get(), range(), and watch(), invoke(), etc will throw CompactionException on corresponding initial calls. 

UPD 2:
For this ticket we decided to implement time-based compaction by creating a timestamp (watermark)->revision mapping. Watermark provider will be implemented in a separate ticket: https://issues.apache.org/jira/browse/IGNITE-19417

  was:
At present {{SimpleInMemoryKeyValueStorage}} already has compaction functionality but it is question: who and when should invoke {{compact}} method.
h3. Upd:
 * It's still an open question: who and when should invoke {{compact}} method.
 * Besides that, it's required to fix storage compaction - IGNITE-16444
 * Seems that we, might reuse inner ms cursors meta in order to prevent compaction of cursors over witch we are currently iterating.
 * It's still however possible that revision-based get(), range(), and watch(), invoke(), etc will throw CompactionException on corresponding initial calls. 


> Implement compaction functionality management for meta storage.
> ---------------------------------------------------------------
>
>                 Key: IGNITE-14734
>                 URL: https://issues.apache.org/jira/browse/IGNITE-14734
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Andrey N. Gura
>            Assignee: Semyon Danilov
>            Priority: Major
>              Labels: iep-61, ignite-3
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> At present {{SimpleInMemoryKeyValueStorage}} already has compaction functionality but it is question: who and when should invoke {{compact}} method.
> h3. Upd:
>  * It's still an open question: who and when should invoke {{compact}} method.
>  * Besides that, it's required to fix storage compaction - IGNITE-16444
>  * Seems that we, might reuse inner ms cursors meta in order to prevent compaction of cursors over witch we are currently iterating.
>  * It's still however possible that revision-based get(), range(), and watch(), invoke(), etc will throw CompactionException on corresponding initial calls. 
> UPD 2:
> For this ticket we decided to implement time-based compaction by creating a timestamp (watermark)->revision mapping. Watermark provider will be implemented in a separate ticket: https://issues.apache.org/jira/browse/IGNITE-19417



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