mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-11-21 14:44:00 +00:00
lib/logstorage: consistently use nsecsPerDay constant and remove nsecPerDay constant
This commit is contained in:
parent
258ccfb953
commit
0205170409
4 changed files with 15 additions and 17 deletions
|
@ -1644,8 +1644,8 @@ func getDayRangeArg(lex *lexer) (int64, string, error) {
|
||||||
if offset < 0 {
|
if offset < 0 {
|
||||||
offset = 0
|
offset = 0
|
||||||
}
|
}
|
||||||
if offset >= nsecPerDay {
|
if offset >= nsecsPerDay {
|
||||||
offset = nsecPerDay - 1
|
offset = nsecsPerDay - 1
|
||||||
}
|
}
|
||||||
return offset, argStr, nil
|
return offset, argStr, nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -200,8 +200,8 @@ func (ptw *partitionWrapper) decRef() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ptw *partitionWrapper) canAddAllRows(lr *LogRows) bool {
|
func (ptw *partitionWrapper) canAddAllRows(lr *LogRows) bool {
|
||||||
minTimestamp := ptw.day * nsecPerDay
|
minTimestamp := ptw.day * nsecsPerDay
|
||||||
maxTimestamp := minTimestamp + nsecPerDay - 1
|
maxTimestamp := minTimestamp + nsecsPerDay - 1
|
||||||
for _, ts := range lr.timestamps {
|
for _, ts := range lr.timestamps {
|
||||||
if ts < minTimestamp || ts > maxTimestamp {
|
if ts < minTimestamp || ts > maxTimestamp {
|
||||||
return false
|
return false
|
||||||
|
@ -286,7 +286,7 @@ func MustOpenStorage(path string, cfg *StorageConfig) *Storage {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Panicf("FATAL: cannot parse partition filename %q at %q; it must be in the form YYYYMMDD: %s", fname, partitionsPath, err)
|
logger.Panicf("FATAL: cannot parse partition filename %q at %q; it must be in the form YYYYMMDD: %s", fname, partitionsPath, err)
|
||||||
}
|
}
|
||||||
day := t.UTC().UnixNano() / nsecPerDay
|
day := t.UTC().UnixNano() / nsecsPerDay
|
||||||
|
|
||||||
partitionPath := filepath.Join(partitionsPath, fname)
|
partitionPath := filepath.Join(partitionsPath, fname)
|
||||||
pt := mustOpenPartition(s, partitionPath)
|
pt := mustOpenPartition(s, partitionPath)
|
||||||
|
@ -441,11 +441,11 @@ func (s *Storage) watchMaxDiskSpaceUsage() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Storage) getMinAllowedDay() int64 {
|
func (s *Storage) getMinAllowedDay() int64 {
|
||||||
return time.Now().UTC().Add(-s.retention).UnixNano() / nsecPerDay
|
return time.Now().UTC().Add(-s.retention).UnixNano() / nsecsPerDay
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Storage) getMaxAllowedDay() int64 {
|
func (s *Storage) getMaxAllowedDay() int64 {
|
||||||
return time.Now().UTC().Add(s.futureRetention).UnixNano() / nsecPerDay
|
return time.Now().UTC().Add(s.futureRetention).UnixNano() / nsecsPerDay
|
||||||
}
|
}
|
||||||
|
|
||||||
// MustClose closes s.
|
// MustClose closes s.
|
||||||
|
@ -514,11 +514,11 @@ func (s *Storage) MustAddRows(lr *LogRows) {
|
||||||
maxAllowedDay := s.getMaxAllowedDay()
|
maxAllowedDay := s.getMaxAllowedDay()
|
||||||
m := make(map[int64]*LogRows)
|
m := make(map[int64]*LogRows)
|
||||||
for i, ts := range lr.timestamps {
|
for i, ts := range lr.timestamps {
|
||||||
day := ts / nsecPerDay
|
day := ts / nsecsPerDay
|
||||||
if day < minAllowedDay {
|
if day < minAllowedDay {
|
||||||
rf := RowFormatter(lr.rows[i])
|
rf := RowFormatter(lr.rows[i])
|
||||||
tsf := TimeFormatter(ts)
|
tsf := TimeFormatter(ts)
|
||||||
minAllowedTsf := TimeFormatter(minAllowedDay * nsecPerDay)
|
minAllowedTsf := TimeFormatter(minAllowedDay * nsecsPerDay)
|
||||||
tooSmallTimestampLogger.Warnf("skipping log entry with too small timestamp=%s; it must be bigger than %s according "+
|
tooSmallTimestampLogger.Warnf("skipping log entry with too small timestamp=%s; it must be bigger than %s according "+
|
||||||
"to the configured -retentionPeriod=%dd. See https://docs.victoriametrics.com/victorialogs/#retention ; "+
|
"to the configured -retentionPeriod=%dd. See https://docs.victoriametrics.com/victorialogs/#retention ; "+
|
||||||
"log entry: %s", &tsf, &minAllowedTsf, durationToDays(s.retention), &rf)
|
"log entry: %s", &tsf, &minAllowedTsf, durationToDays(s.retention), &rf)
|
||||||
|
@ -528,7 +528,7 @@ func (s *Storage) MustAddRows(lr *LogRows) {
|
||||||
if day > maxAllowedDay {
|
if day > maxAllowedDay {
|
||||||
rf := RowFormatter(lr.rows[i])
|
rf := RowFormatter(lr.rows[i])
|
||||||
tsf := TimeFormatter(ts)
|
tsf := TimeFormatter(ts)
|
||||||
maxAllowedTsf := TimeFormatter(maxAllowedDay * nsecPerDay)
|
maxAllowedTsf := TimeFormatter(maxAllowedDay * nsecsPerDay)
|
||||||
tooBigTimestampLogger.Warnf("skipping log entry with too big timestamp=%s; it must be smaller than %s according "+
|
tooBigTimestampLogger.Warnf("skipping log entry with too big timestamp=%s; it must be smaller than %s according "+
|
||||||
"to the configured -futureRetention=%dd; see https://docs.victoriametrics.com/victorialogs/#retention ; "+
|
"to the configured -futureRetention=%dd; see https://docs.victoriametrics.com/victorialogs/#retention ; "+
|
||||||
"log entry: %s", &tsf, &maxAllowedTsf, durationToDays(s.futureRetention), &rf)
|
"log entry: %s", &tsf, &maxAllowedTsf, durationToDays(s.futureRetention), &rf)
|
||||||
|
@ -553,8 +553,6 @@ func (s *Storage) MustAddRows(lr *LogRows) {
|
||||||
var tooSmallTimestampLogger = logger.WithThrottler("too_small_timestamp", 5*time.Second)
|
var tooSmallTimestampLogger = logger.WithThrottler("too_small_timestamp", 5*time.Second)
|
||||||
var tooBigTimestampLogger = logger.WithThrottler("too_big_timestamp", 5*time.Second)
|
var tooBigTimestampLogger = logger.WithThrottler("too_big_timestamp", 5*time.Second)
|
||||||
|
|
||||||
const nsecPerDay = 24 * 3600 * 1e9
|
|
||||||
|
|
||||||
// TimeFormatter implements fmt.Stringer for timestamp in nanoseconds
|
// TimeFormatter implements fmt.Stringer for timestamp in nanoseconds
|
||||||
type TimeFormatter int64
|
type TimeFormatter int64
|
||||||
|
|
||||||
|
@ -582,7 +580,7 @@ func (s *Storage) getPartitionForDay(day int64) *partitionWrapper {
|
||||||
}
|
}
|
||||||
if ptw == nil {
|
if ptw == nil {
|
||||||
// Missing partition for the given day. Create it.
|
// Missing partition for the given day. Create it.
|
||||||
fname := time.Unix(0, day*nsecPerDay).UTC().Format(partitionNameFormat)
|
fname := time.Unix(0, day*nsecsPerDay).UTC().Format(partitionNameFormat)
|
||||||
partitionPath := filepath.Join(s.path, partitionsDirname, fname)
|
partitionPath := filepath.Join(s.path, partitionsDirname, fname)
|
||||||
mustCreatePartition(partitionPath)
|
mustCreatePartition(partitionPath)
|
||||||
|
|
||||||
|
|
|
@ -673,12 +673,12 @@ func (s *Storage) search(workersCount int, so *genericSearchOptions, stopCh <-ch
|
||||||
// Select partitions according to the selected time range
|
// Select partitions according to the selected time range
|
||||||
s.partitionsLock.Lock()
|
s.partitionsLock.Lock()
|
||||||
ptws := s.partitions
|
ptws := s.partitions
|
||||||
minDay := so.minTimestamp / nsecPerDay
|
minDay := so.minTimestamp / nsecsPerDay
|
||||||
n := sort.Search(len(ptws), func(i int) bool {
|
n := sort.Search(len(ptws), func(i int) bool {
|
||||||
return ptws[i].day >= minDay
|
return ptws[i].day >= minDay
|
||||||
})
|
})
|
||||||
ptws = ptws[n:]
|
ptws = ptws[n:]
|
||||||
maxDay := so.maxTimestamp / nsecPerDay
|
maxDay := so.maxTimestamp / nsecsPerDay
|
||||||
n = sort.Search(len(ptws), func(i int) bool {
|
n = sort.Search(len(ptws), func(i int) bool {
|
||||||
return ptws[i].day > maxDay
|
return ptws[i].day > maxDay
|
||||||
})
|
})
|
||||||
|
|
|
@ -78,10 +78,10 @@ func TestStorageMustAddRows(t *testing.T) {
|
||||||
s = MustOpenStorage(path, cfg)
|
s = MustOpenStorage(path, cfg)
|
||||||
|
|
||||||
lr = newTestLogRows(3, 10, 0)
|
lr = newTestLogRows(3, 10, 0)
|
||||||
now := time.Now().UTC().UnixNano() - int64(len(lr.timestamps)/2)*nsecPerDay
|
now := time.Now().UTC().UnixNano() - int64(len(lr.timestamps)/2)*nsecsPerDay
|
||||||
for i := range lr.timestamps {
|
for i := range lr.timestamps {
|
||||||
lr.timestamps[i] = now
|
lr.timestamps[i] = now
|
||||||
now += nsecPerDay
|
now += nsecsPerDay
|
||||||
}
|
}
|
||||||
totalRowsCount += uint64(len(lr.timestamps))
|
totalRowsCount += uint64(len(lr.timestamps))
|
||||||
s.MustAddRows(lr)
|
s.MustAddRows(lr)
|
||||||
|
|
Loading…
Reference in a new issue