mirror of
https://github.com/prometheus/prometheus.git
synced 2025-02-02 08:31:11 -08:00
Disable paranoid checks and expose max FDs option.
We shouldn't need paranoid checks now. We also shouldn't need too many FDs being open due to rule evaluator hitting in-memory values stream.
This commit is contained in:
parent
4137c75523
commit
b811ccc161
|
@ -29,7 +29,8 @@ import (
|
||||||
var (
|
var (
|
||||||
leveldbFlushOnMutate = flag.Bool("leveldbFlushOnMutate", false, "Whether LevelDB should flush every operation to disk upon mutation before returning (bool).")
|
leveldbFlushOnMutate = flag.Bool("leveldbFlushOnMutate", false, "Whether LevelDB should flush every operation to disk upon mutation before returning (bool).")
|
||||||
leveldbUseSnappy = flag.Bool("leveldbUseSnappy", true, "Whether LevelDB attempts to use Snappy for compressing elements (bool).")
|
leveldbUseSnappy = flag.Bool("leveldbUseSnappy", true, "Whether LevelDB attempts to use Snappy for compressing elements (bool).")
|
||||||
leveldbUseParanoidChecks = flag.Bool("leveldbUseParanoidChecks", true, "Whether LevelDB uses expensive checks (bool).")
|
leveldbUseParanoidChecks = flag.Bool("leveldbUseParanoidChecks", false, "Whether LevelDB uses expensive checks (bool).")
|
||||||
|
maximumOpenFiles = flag.Int("leveldb.maximumOpenFiles", 128, "The maximum number of files each LevelDB may maintain.")
|
||||||
)
|
)
|
||||||
|
|
||||||
// LevelDBPersistence is a disk-backed sorted key-value store.
|
// LevelDBPersistence is a disk-backed sorted key-value store.
|
||||||
|
@ -168,7 +169,7 @@ func (i levigoIterator) GetError() (err error) {
|
||||||
return i.iterator.GetError()
|
return i.iterator.GetError()
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewLevelDBPersistence(storageRoot string, cacheCapacity, bitsPerBloomFilterEncoded int) (p *LevelDBPersistence, err error) {
|
func NewLevelDBPersistence(storageRoot string, cacheCapacity, bitsPerBloomFilterEncoded int) (*LevelDBPersistence, error) {
|
||||||
options := levigo.NewOptions()
|
options := levigo.NewOptions()
|
||||||
options.SetCreateIfMissing(true)
|
options.SetCreateIfMissing(true)
|
||||||
options.SetParanoidChecks(*leveldbUseParanoidChecks)
|
options.SetParanoidChecks(*leveldbUseParanoidChecks)
|
||||||
|
@ -184,18 +185,19 @@ func NewLevelDBPersistence(storageRoot string, cacheCapacity, bitsPerBloomFilter
|
||||||
filterPolicy := levigo.NewBloomFilter(bitsPerBloomFilterEncoded)
|
filterPolicy := levigo.NewBloomFilter(bitsPerBloomFilterEncoded)
|
||||||
options.SetFilterPolicy(filterPolicy)
|
options.SetFilterPolicy(filterPolicy)
|
||||||
|
|
||||||
|
options.SetMaxOpenFiles(*maximumOpenFiles)
|
||||||
|
|
||||||
storage, err := levigo.Open(storageRoot, options)
|
storage, err := levigo.Open(storageRoot, options)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
readOptions := levigo.NewReadOptions()
|
||||||
readOptions = levigo.NewReadOptions()
|
|
||||||
writeOptions = levigo.NewWriteOptions()
|
|
||||||
)
|
|
||||||
|
|
||||||
|
writeOptions := levigo.NewWriteOptions()
|
||||||
writeOptions.SetSync(*leveldbFlushOnMutate)
|
writeOptions.SetSync(*leveldbFlushOnMutate)
|
||||||
p = &LevelDBPersistence{
|
|
||||||
|
return &LevelDBPersistence{
|
||||||
path: storageRoot,
|
path: storageRoot,
|
||||||
|
|
||||||
cache: cache,
|
cache: cache,
|
||||||
|
@ -206,9 +208,7 @@ func NewLevelDBPersistence(storageRoot string, cacheCapacity, bitsPerBloomFilter
|
||||||
writeOptions: writeOptions,
|
writeOptions: writeOptions,
|
||||||
|
|
||||||
storage: storage,
|
storage: storage,
|
||||||
}
|
}, nil
|
||||||
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *LevelDBPersistence) Close() {
|
func (l *LevelDBPersistence) Close() {
|
||||||
|
|
Loading…
Reference in a new issue