seaweedfs/weed/filesys/meta_cache/meta_cache.go

37 lines
700 B
Go
Raw Normal View History

package meta_cache
import (
"os"
"github.com/chrislusf/seaweedfs/weed/filer2"
"github.com/chrislusf/seaweedfs/weed/filer2/leveldb"
"github.com/chrislusf/seaweedfs/weed/glog"
)
type MetaCache struct {
filer2.FilerStore
}
func NewMetaCache(dbFolder string) *MetaCache {
return &MetaCache{
FilerStore: openMetaStore(dbFolder),
}
}
func openMetaStore(dbFolder string) filer2.FilerStore {
2020-04-22 05:00:34 +00:00
os.RemoveAll(dbFolder)
os.MkdirAll(dbFolder, 0755)
store := &leveldb.LevelDBStore{}
2020-04-22 05:00:34 +00:00
config := &cacheConfig{
dir: dbFolder,
}
if err := store.Initialize(config, ""); err != nil {
glog.Fatalf("Failed to initialize metadata cache store for %s: %+v", store.GetName(), err)
}
return store
}