forked from TrueCloudLab/frostfs-node
[#409] node: Do not sent initial bootstrap under maintenance
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
This commit is contained in:
parent
250602032d
commit
daada10590
2 changed files with 9 additions and 0 deletions
|
@ -225,6 +225,10 @@ func addNewEpochNotificationHandlers(c *cfg) {
|
|||
// Must be called after initNetmapService.
|
||||
func bootstrapNode(c *cfg) {
|
||||
if c.needBootstrap() {
|
||||
if c.IsMaintenance() {
|
||||
c.log.Info(logs.FrostFSNodeNodeIsUnderMaintenanceSkipInitialBootstrap)
|
||||
return
|
||||
}
|
||||
err := c.bootstrap()
|
||||
fatalOnErrDetails("bootstrap error", err)
|
||||
}
|
||||
|
@ -266,6 +270,10 @@ func initNetmapState(c *cfg) {
|
|||
zap.String("state", stateWord),
|
||||
)
|
||||
|
||||
if ni != nil && ni.IsMaintenance() {
|
||||
c.isMaintenance.Store(true)
|
||||
}
|
||||
|
||||
c.cfgNetmap.state.setCurrentEpoch(epoch)
|
||||
c.cfgNetmap.startEpoch = epoch
|
||||
c.handleLocalNodeInfo(ni)
|
||||
|
|
|
@ -491,4 +491,5 @@ const (
|
|||
EngineShardsEvacuationFailedToMoveObject = "failed to evacuate object to other node"
|
||||
ShardGCFailedToGetExpiredWithLinked = "failed to get expired objects with linked"
|
||||
ShardDeleteCantDeleteFromWriteCache = "can't delete object from write cache"
|
||||
FrostFSNodeNodeIsUnderMaintenanceSkipInitialBootstrap = "the node is under maintenance, skip initial bootstrap"
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue