Skip to content

Validation to abort duplicate compaction using visit marker #7135

@anna-tran

Description

@anna-tran

Is your feature request related to a problem? Please describe.
In addition to the changes made in #7082 and #7130, there should be extra validation steps in the compaction process to abort a duplicate partition compaction that starts immediately after a completed partition group has been cleaned.

Describe the solution you'd like
This validation could be done by storing the partition group creation time in the the visit marker. If in the heartbeat loop the visit marker manager detects that the partition group creation time is different than the time on the visit marker, then there must be a new version of the partition group info file and the current compaction is invalid. As such, the visit marker should be deleted and the compaction context should be cancelled to let the compaction fail.

Describe alternatives you've considered
This could also be done by adding a new goroutine that repeatedly checks for the change in or existence of partition group creation time but since the visit marker already heartbeats until the end of the compaction job, we can reuse that and add the partition group creation time to the marker itself.

Additional context

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions