All checks were successful
Go Tests / Run Tests (1.24.2) (push) Successful in 9m48s
30 lines
656 B
Go
30 lines
656 B
Go
package interfaces
|
|
|
|
// CompactionManager handles the compaction of SSTables
|
|
type CompactionManager interface {
|
|
// Core operations
|
|
TriggerCompaction() error
|
|
CompactRange(startKey, endKey []byte) error
|
|
|
|
// Tombstone management
|
|
TrackTombstone(key []byte)
|
|
ForcePreserveTombstone(key []byte)
|
|
|
|
// Lifecycle management
|
|
Start() error
|
|
Stop() error
|
|
|
|
// Statistics
|
|
GetCompactionStats() map[string]interface{}
|
|
}
|
|
|
|
// CompactionCoordinator handles scheduling and coordination of compaction
|
|
type CompactionCoordinator interface {
|
|
CompactionManager
|
|
|
|
// Coordination methods
|
|
ScheduleCompaction() error
|
|
IsCompactionRunning() bool
|
|
WaitForCompaction() error
|
|
}
|