From 3215210d0cd4e696db070bfc26b88623207a4dd7 Mon Sep 17 00:00:00 2001 From: Evgenii Stratonikov Date: Tue, 18 Jan 2022 17:26:30 +0300 Subject: [PATCH] [#1085] shard: Close components in reverse order Write-cache should be closed before blobstor and metabase. Signed-off-by: Evgenii Stratonikov --- pkg/local_object_storage/shard/control.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/local_object_storage/shard/control.go b/pkg/local_object_storage/shard/control.go index 86ecc4069..9507c4eaa 100644 --- a/pkg/local_object_storage/shard/control.go +++ b/pkg/local_object_storage/shard/control.go @@ -127,14 +127,14 @@ func (s *Shard) refillMetabase() error { // Close releases all Shard's components. func (s *Shard) Close() error { - components := []interface{ Close() error }{ - s.blobStor, s.metaBase, - } + components := []interface{ Close() error }{} if s.hasWriteCache() { components = append(components, s.writeCache) } + components = append(components, s.blobStor, s.metaBase) + for _, component := range components { if err := component.Close(); err != nil { return fmt.Errorf("could not close %s: %w", component, err)