1
0
Fork 0
forked from forks/go-ethereum

ethdb: no need to check the metric nilness (#31353)

The metric always has a value, no need to check for the nil. 

Seems this code was first introduced here
054412e335/metrics/meter.go (L45-L48)

As the `nilMeter` was removed, so this check seems is useless.

Signed-off-by: jsvisa <delweng@gmail.com>
This commit is contained in:
Delweng 2025-03-12 05:30:02 +08:00 committed by GitHub
parent e442c4d50c
commit ca530362ca
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 17 additions and 48 deletions

View file

@ -368,29 +368,17 @@ func (db *Database) meter(refresh time.Duration, namespace string) {
compactions[i%2][2] = stats.LevelRead.Sum()
compactions[i%2][3] = stats.LevelWrite.Sum()
// Update all the requested meters
if db.diskSizeGauge != nil {
db.diskSizeGauge.Update(compactions[i%2][0])
}
if db.compTimeMeter != nil {
db.compTimeMeter.Mark(compactions[i%2][1] - compactions[(i-1)%2][1])
}
if db.compReadMeter != nil {
db.compReadMeter.Mark(compactions[i%2][2] - compactions[(i-1)%2][2])
}
if db.compWriteMeter != nil {
db.compWriteMeter.Mark(compactions[i%2][3] - compactions[(i-1)%2][3])
}
db.diskSizeGauge.Update(compactions[i%2][0])
db.compTimeMeter.Mark(compactions[i%2][1] - compactions[(i-1)%2][1])
db.compReadMeter.Mark(compactions[i%2][2] - compactions[(i-1)%2][2])
db.compWriteMeter.Mark(compactions[i%2][3] - compactions[(i-1)%2][3])
var (
delayN = int64(stats.WriteDelayCount)
duration = stats.WriteDelayDuration
paused = stats.WritePaused
)
if db.writeDelayNMeter != nil {
db.writeDelayNMeter.Mark(delayN - delaystats[0])
}
if db.writeDelayMeter != nil {
db.writeDelayMeter.Mark(duration.Nanoseconds() - delaystats[1])
}
db.writeDelayNMeter.Mark(delayN - delaystats[0])
db.writeDelayMeter.Mark(duration.Nanoseconds() - delaystats[1])
// If a warning that db is performing compaction has been displayed, any subsequent
// warnings will be withheld for one minute not to overwhelm the user.
if paused && delayN-delaystats[0] == 0 && duration.Nanoseconds()-delaystats[1] == 0 &&
@ -404,12 +392,8 @@ func (db *Database) meter(refresh time.Duration, namespace string) {
nRead = int64(stats.IORead)
nWrite = int64(stats.IOWrite)
)
if db.diskReadMeter != nil {
db.diskReadMeter.Mark(nRead - iostats[0])
}
if db.diskWriteMeter != nil {
db.diskWriteMeter.Mark(nWrite - iostats[1])
}
db.diskReadMeter.Mark(nRead - iostats[0])
db.diskWriteMeter.Mark(nWrite - iostats[1])
iostats[0], iostats[1] = nRead, nWrite
db.memCompGauge.Update(int64(stats.MemComp))

View file

@ -465,12 +465,8 @@ func (d *Database) meter(refresh time.Duration, namespace string) {
compReads[i%2] = compRead
nWrites[i%2] = nWrite
if d.writeDelayNMeter != nil {
d.writeDelayNMeter.Mark(writeDelayCounts[i%2] - writeDelayCounts[(i-1)%2])
}
if d.writeDelayMeter != nil {
d.writeDelayMeter.Mark(writeDelayTimes[i%2] - writeDelayTimes[(i-1)%2])
}
d.writeDelayNMeter.Mark(writeDelayCounts[i%2] - writeDelayCounts[(i-1)%2])
d.writeDelayMeter.Mark(writeDelayTimes[i%2] - writeDelayTimes[(i-1)%2])
// Print a warning log if writing has been stalled for a while. The log will
// be printed per minute to avoid overwhelming users.
if d.writeStalled.Load() && writeDelayCounts[i%2] == writeDelayCounts[(i-1)%2] &&
@ -478,24 +474,13 @@ func (d *Database) meter(refresh time.Duration, namespace string) {
d.log.Warn("Database compacting, degraded performance")
lastWriteStallReport = time.Now()
}
if d.compTimeMeter != nil {
d.compTimeMeter.Mark(compTimes[i%2] - compTimes[(i-1)%2])
}
if d.compReadMeter != nil {
d.compReadMeter.Mark(compReads[i%2] - compReads[(i-1)%2])
}
if d.compWriteMeter != nil {
d.compWriteMeter.Mark(compWrites[i%2] - compWrites[(i-1)%2])
}
if d.diskSizeGauge != nil {
d.diskSizeGauge.Update(int64(stats.DiskSpaceUsage()))
}
if d.diskReadMeter != nil {
d.diskReadMeter.Mark(0) // pebble doesn't track non-compaction reads
}
if d.diskWriteMeter != nil {
d.diskWriteMeter.Mark(nWrites[i%2] - nWrites[(i-1)%2])
}
d.compTimeMeter.Mark(compTimes[i%2] - compTimes[(i-1)%2])
d.compReadMeter.Mark(compReads[i%2] - compReads[(i-1)%2])
d.compWriteMeter.Mark(compWrites[i%2] - compWrites[(i-1)%2])
d.diskSizeGauge.Update(int64(stats.DiskSpaceUsage()))
d.diskReadMeter.Mark(0) // pebble doesn't track non-compaction reads
d.diskWriteMeter.Mark(nWrites[i%2] - nWrites[(i-1)%2])
// See https://github.com/cockroachdb/pebble/pull/1628#pullrequestreview-1026664054
manuallyAllocated := stats.BlockCache.Size + int64(stats.MemTable.Size) + int64(stats.MemTable.ZombieSize)
d.manualMemAllocGauge.Update(manuallyAllocated)