[#421] Try using badger for the write-cache
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
This commit is contained in:
parent
65c72f3e0b
commit
1a0cb0f34a
56 changed files with 2234 additions and 747 deletions
36
pkg/local_object_storage/writecache/writecachebadger/util.go
Normal file
36
pkg/local_object_storage/writecache/writecachebadger/util.go
Normal file
|
@ -0,0 +1,36 @@
|
|||
package writecachebadger
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/util/logger"
|
||||
"github.com/dgraph-io/badger/v4"
|
||||
)
|
||||
|
||||
// OpenDB opens a badger instance for write-cache. Opens in read-only mode if ro is true.
|
||||
func OpenDB(p string, ro bool, l *logger.Logger) (*badger.DB, error) {
|
||||
return badger.Open(badger.DefaultOptions(p).
|
||||
WithReadOnly(ro).
|
||||
WithLoggingLevel(badger.ERROR).
|
||||
WithLogger(badgerLoggerWrapper{l}))
|
||||
}
|
||||
|
||||
type badgerLoggerWrapper struct {
|
||||
l *logger.Logger
|
||||
}
|
||||
|
||||
func (w badgerLoggerWrapper) Errorf(msg string, args ...any) {
|
||||
w.l.Error(fmt.Sprintf(msg, args...))
|
||||
}
|
||||
|
||||
func (w badgerLoggerWrapper) Warningf(msg string, args ...any) {
|
||||
w.l.Error(fmt.Sprintf(msg, args...))
|
||||
}
|
||||
|
||||
func (w badgerLoggerWrapper) Infof(msg string, args ...any) {
|
||||
w.l.Error(fmt.Sprintf(msg, args...))
|
||||
}
|
||||
|
||||
func (w badgerLoggerWrapper) Debugf(msg string, args ...any) {
|
||||
w.l.Error(fmt.Sprintf(msg, args...))
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue