mirror of
https://github.com/0glabs/0g-chain.git
synced 2024-11-14 20:15:18 +00:00
e35747a5f5
* Make rocksdb configurable (#1658)
* Make rocksdb configurable
* Make sure rocksdb tests are running in CI
* Updating ci-rocksdb-build workflow
* Remove test.sh
* Update tm-db dependency
(cherry picked from commit 90fbe1aad7
)
* Rocksdb Metrics (#1692)
* Rocksdb Metrics
* Add rocksdb namespace for options
* Adding help to the metrics
* CR's fixes
* CR's fixes
* CR's fixes
* Increase number of options to configure rocksdb (#1696)
---------
Co-authored-by: Evgeniy Scherbina <evgeniy.shcherbina.es@gmail.com>
81 lines
3.2 KiB
Go
81 lines
3.2 KiB
Go
//go:build rocksdb
|
|
// +build rocksdb
|
|
|
|
package opendb
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestStatsLoader(t *testing.T) {
|
|
defaultStat := stat{
|
|
props: map[string]string{
|
|
"COUNT": "1",
|
|
},
|
|
}
|
|
defaultHistogramStat := stat{
|
|
props: map[string]string{
|
|
"P50": "1",
|
|
"P95": "2",
|
|
"P99": "3",
|
|
"P100": "4",
|
|
"COUNT": "5",
|
|
"SUM": "6",
|
|
},
|
|
}
|
|
defaultStatMap := map[string]*stat{
|
|
"rocksdb.number.keys.written": &defaultStat,
|
|
"rocksdb.number.keys.read": &defaultStat,
|
|
"rocksdb.number.keys.updated": &defaultStat,
|
|
"rocksdb.block.cache.miss": &defaultStat,
|
|
"rocksdb.block.cache.hit": &defaultStat,
|
|
"rocksdb.block.cache.add": &defaultStat,
|
|
"rocksdb.block.cache.add.failures": &defaultStat,
|
|
"rocksdb.compact.read.bytes": &defaultStat,
|
|
"rocksdb.compact.write.bytes": &defaultStat,
|
|
"rocksdb.compaction.times.micros": &defaultHistogramStat,
|
|
"rocksdb.compaction.times.cpu_micros": &defaultHistogramStat,
|
|
"rocksdb.numfiles.in.singlecompaction": &defaultHistogramStat,
|
|
"rocksdb.read.amp.estimate.useful.bytes": &defaultStat,
|
|
"rocksdb.read.amp.total.read.bytes": &defaultStat,
|
|
"rocksdb.no.file.opens": &defaultStat,
|
|
"rocksdb.no.file.errors": &defaultStat,
|
|
"rocksdb.bloom.filter.useful": &defaultStat,
|
|
"rocksdb.bloom.filter.full.positive": &defaultStat,
|
|
"rocksdb.bloom.filter.full.true.positive": &defaultStat,
|
|
"rocksdb.memtable.hit": &defaultStat,
|
|
"rocksdb.memtable.miss": &defaultStat,
|
|
"rocksdb.l0.hit": &defaultStat,
|
|
"rocksdb.l1.hit": &defaultStat,
|
|
"rocksdb.l2andup.hit": &defaultStat,
|
|
"rocksdb.bytes.written": &defaultStat,
|
|
"rocksdb.bytes.read": &defaultStat,
|
|
"rocksdb.stall.micros": &defaultStat,
|
|
"rocksdb.last.level.read.bytes": &defaultStat,
|
|
"rocksdb.last.level.read.count": &defaultStat,
|
|
"rocksdb.non.last.level.read.bytes": &defaultStat,
|
|
"rocksdb.non.last.level.read.count": &defaultStat,
|
|
"rocksdb.db.get.micros": &defaultHistogramStat,
|
|
"rocksdb.db.write.micros": &defaultHistogramStat,
|
|
"rocksdb.bytes.per.read": &defaultHistogramStat,
|
|
"rocksdb.bytes.per.write": &defaultHistogramStat,
|
|
"rocksdb.bytes.per.multiget": &defaultHistogramStat,
|
|
"rocksdb.db.flush.micros": &defaultHistogramStat,
|
|
}
|
|
|
|
statLoader := newStatLoader(defaultStatMap)
|
|
stats, err := statLoader.load()
|
|
require.NoError(t, err)
|
|
|
|
require.Equal(t, stats.NumberKeysWritten, int64(1))
|
|
require.Equal(t, stats.NumberKeysRead, int64(1))
|
|
require.Equal(t, stats.CompactionTimesMicros.P50, float64(1))
|
|
require.Equal(t, stats.CompactionTimesMicros.P95, float64(2))
|
|
require.Equal(t, stats.CompactionTimesMicros.P99, float64(3))
|
|
require.Equal(t, stats.CompactionTimesMicros.P100, float64(4))
|
|
require.Equal(t, stats.CompactionTimesMicros.Count, float64(5))
|
|
require.Equal(t, stats.CompactionTimesMicros.Sum, float64(6))
|
|
}
|