platoneko opened a new pull request, #28979: URL: https://github.com/apache/doris/pull/28979
## Proposed changes Write rowset: add to pending_rowset_set write rowset file to tablet dir add to tablet_version_map erase from pending_rowset_set Original gc rowsets: list tablet dir to get rowset_files take snapshot of tablet_version_map reclaim rowset_files not in tablet_version_map_snapshot and not in pending_rowset_set Bug happens: [W] add to pending_rowset_set [W] write rowset file to tablet dir [GC] list tablet dir to get rowset_files [GC] take snapshot of tablet_version_map [W] add to tablet_version_map [W] erase from pending_rowset_set // Now rowset is neither in tablet_version_map_snapshot or pending_rowset_set [GC] reclaim rowset_files not in tablet_version_map_snapshot and not in pending_rowset_set Fixed gc rowsets: list tablet dir to get rowset_files filter out rowset_files in pending_rowset_set take snapshot of tablet_version_map reclaim rowset_files not in tablet_version_map_snapshot ## Further comments If this is a relatively large or complex change, kick off the discussion at [d...@doris.apache.org](mailto:d...@doris.apache.org) by explaining why you chose the solution you did and what alternatives you considered, etc... -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org