[#1689] engine: Use IO tag critical for engine reload

Storage engine reload may cause IO operations (writecache flush), that
should not be scheduled in some way.

Change-Id: I7486a4646b4dd9bcedd2aa432b749e7f206b8b77
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
This commit is contained in:
Dmitrii Stepanov 2025-05-06 10:54:38 +03:00
parent 86aec1ad6d
commit 0b5ac445b6
Signed by: dstepanov-yadro
GPG key ID: 237AF1A763293BC0

View file

@ -9,8 +9,10 @@ import (
"sync"
"git.frostfs.info/TrueCloudLab/frostfs-node/internal/logs"
"git.frostfs.info/TrueCloudLab/frostfs-node/internal/qos"
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/blobstor"
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/shard"
"git.frostfs.info/TrueCloudLab/frostfs-qos/tagging"
"go.uber.org/zap"
"golang.org/x/sync/errgroup"
)
@ -211,6 +213,7 @@ func (rCfg *ReConfiguration) AddShard(id string, opts []shard.Option) {
// Reload reloads StorageEngine's configuration in runtime.
func (e *StorageEngine) Reload(ctx context.Context, rcfg ReConfiguration) error {
ctx = tagging.ContextWithIOTag(ctx, qos.IOTagCritical.String())
type reloadInfo struct {
sh *shard.Shard
opts []shard.Option