aboutsummaryrefslogtreecommitdiff
path: root/weed/filer/rocksdb/rocksdb_store.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/filer/rocksdb/rocksdb_store.go')
-rw-r--r--weed/filer/rocksdb/rocksdb_store.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/weed/filer/rocksdb/rocksdb_store.go b/weed/filer/rocksdb/rocksdb_store.go
index face5963e..467b07aaa 100644
--- a/weed/filer/rocksdb/rocksdb_store.go
+++ b/weed/filer/rocksdb/rocksdb_store.go
@@ -24,18 +24,21 @@ func init() {
type options struct {
opt *gorocksdb.Options
+ bto *gorocksdb.BlockBasedTableOptions
ro *gorocksdb.ReadOptions
wo *gorocksdb.WriteOptions
}
func (opt *options) init() {
opt.opt = gorocksdb.NewDefaultOptions()
+ opt.bto = gorocksdb.NewDefaultBlockBasedTableOptions()
opt.ro = gorocksdb.NewDefaultReadOptions()
opt.wo = gorocksdb.NewDefaultWriteOptions()
}
func (opt *options) close() {
opt.opt.Destroy()
+ opt.bto.Destroy()
opt.ro.Destroy()
opt.wo.Destroy()
}
@@ -69,6 +72,11 @@ func (store *RocksDBStore) initialize(dir string) (err error) {
store.opt.SetCompactionFilter(NewTTLFilter())
// store.opt.SetMaxBackgroundCompactions(2)
+ // https://github.com/tecbot/gorocksdb/issues/132
+ store.bto.SetFilterPolicy(gorocksdb.NewBloomFilterFull(8))
+ store.opt.SetBlockBasedTableFactory(store.bto)
+ // store.opt.EnableStatistics()
+
store.db, err = gorocksdb.OpenDb(store.opt, dir)
return