Merge pull request #2643 from kmlebedev/graceful_volume_stop

This commit is contained in:
Chris Lu 2022-02-07 09:58:26 -08:00 committed by GitHub
commit 1b7fb3ce84
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -26,6 +26,9 @@ func (s *Store) CompactVolume(vid needle.VolumeId, preallocate int64, compaction
return fmt.Errorf("volume id %d is not found during compact", vid) return fmt.Errorf("volume id %d is not found during compact", vid)
} }
func (s *Store) CommitCompactVolume(vid needle.VolumeId) (bool, error) { func (s *Store) CommitCompactVolume(vid needle.VolumeId) (bool, error) {
if s.isStopping {
return false, fmt.Errorf("volume id %d skips compact because volume is stopping", vid)
}
if v := s.findVolume(vid); v != nil { if v := s.findVolume(vid); v != nil {
return v.IsReadOnly(), v.CommitCompact() return v.IsReadOnly(), v.CommitCompact()
} }