Ivan Bessonov created IGNITE-26294:
--------------------------------------
Summary: Implement segment file compaction
Key: IGNITE-26294
URL: https://issues.apache.org/jira/browse/IGNITE-26294
Project: Ignite
Issue Type: Improvement
Reporter: Ivan Bessonov
Segment truncation is the process of copying the segment into a new segment
files with the same number, but with an incremented generation. New generation
of the file should not have any information about already truncated or reset
data.
Only relevant log entries should be left there. The best case is when there are
no such entries and an entire file must be deleted, then we don't need to
increment the generation.
Compaction process should also generate an index file with incremented
generation, and update all the in-memory metadata to reflect the generation
increment. When everything's done, original segment and its index file must be
deleted.
We're not integrating this mechanism yet, only implementing it and cover it
with test.
There must be a lot of test, including a concurrent read from the segment that
we're compacting/deleting.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)