Before, no used rowset will be removed from RowsetGraph after compaction.
There will only one path from one version to another version.
For example, (0,1), (1,10), (11, 11), (12,12), (13,13) version list.
There is no problem in current code.
But when decoupling storage from compute, TabletMeta will stored in remote store.
If any compaction do modify tablet meta, this will be a performance issue to save meta.
1条答案
按热度按时间ljsrvy3e1#
To address this issue, rowset still remain in RowsetGraph after compaction.
Instead, a new thread will collect these rowset at interval.
This will also can help use do incremental clone without current incremental_version in TabletMeta.