mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-11-27 02:46:47 +01:00
lib/storage: load metadata before loading indexdb, since indexdb depends on the metadata
This commit is contained in:
parent
cdecf83ce5
commit
5d5f0b0627
@ -167,10 +167,17 @@ func OpenStorage(path string, retentionMsecs int64) (*Storage, error) {
|
||||
|
||||
s.prefetchedMetricIDs.Store(&uint64set.Set{})
|
||||
|
||||
// Load metadata
|
||||
metadataDir := path + "/metadata"
|
||||
isEmptyDB := !fs.IsPathExist(path + "/indexdb")
|
||||
if err := fs.MkdirAllIfNotExist(metadataDir); err != nil {
|
||||
return nil, fmt.Errorf("cannot create %q: %w", metadataDir, err)
|
||||
}
|
||||
s.minTimestampForCompositeIndex = mustGetMinTimestampForCompositeIndex(metadataDir, isEmptyDB)
|
||||
|
||||
// Load indexdb
|
||||
idbPath := path + "/indexdb"
|
||||
idbSnapshotsPath := idbPath + "/snapshots"
|
||||
isEmptyDB := !fs.IsPathExist(idbPath)
|
||||
if err := fs.MkdirAllIfNotExist(idbSnapshotsPath); err != nil {
|
||||
return nil, fmt.Errorf("cannot create %q: %w", idbSnapshotsPath, err)
|
||||
}
|
||||
@ -190,13 +197,6 @@ func OpenStorage(path string, retentionMsecs int64) (*Storage, error) {
|
||||
}
|
||||
s.tb = tb
|
||||
|
||||
// Load metadata
|
||||
metadataDir := path + "/metadata"
|
||||
if err := fs.MkdirAllIfNotExist(metadataDir); err != nil {
|
||||
return nil, fmt.Errorf("cannot create %q: %w", metadataDir, err)
|
||||
}
|
||||
s.minTimestampForCompositeIndex = mustGetMinTimestampForCompositeIndex(metadataDir, isEmptyDB)
|
||||
|
||||
s.startCurrHourMetricIDsUpdater()
|
||||
s.startNextDayMetricIDsUpdater()
|
||||
s.startRetentionWatcher()
|
||||
|
Loading…
Reference in New Issue
Block a user