forked from TrueCloudLab/frostfs-node
[#949] metabase: fix shard.UpdateID()
metabase.Open() now reports metabase mode metric. shard.UpdateID() needs to read shard ID from metabase => needs to open metabase. It caused reporting 'shard undefined' metrics. To avoid reporting wrong metrics metabase.GetShardID() was added which also opens metabase and does not report metrics. Signed-off-by: Ekaterina Lebedeva <ekaterina.lebedeva@yadro.com>
This commit is contained in:
parent
81a0346a96
commit
d5194ab2a6
5 changed files with 69 additions and 38 deletions
|
@ -202,11 +202,12 @@ func (db *DB) SyncCounters() error {
|
|||
}))
|
||||
}
|
||||
|
||||
// Close closes boltDB instance.
|
||||
// Close closes boltDB instance
|
||||
// and reports metabase metric.
|
||||
func (db *DB) Close() error {
|
||||
var err error
|
||||
if db.boltDB != nil {
|
||||
err = metaerr.Wrap(db.boltDB.Close())
|
||||
err = db.close()
|
||||
}
|
||||
if err == nil {
|
||||
db.metrics.Close()
|
||||
|
@ -214,6 +215,10 @@ func (db *DB) Close() error {
|
|||
return err
|
||||
}
|
||||
|
||||
func (db *DB) close() error {
|
||||
return metaerr.Wrap(db.boltDB.Close())
|
||||
}
|
||||
|
||||
// Reload reloads part of the configuration.
|
||||
// It returns true iff database was reopened.
|
||||
// If a config option is invalid, it logs an error and returns nil.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue