mmm: read-only mode.
This commit is contained in:
@@ -86,7 +86,8 @@ var app = &cli.Command{
|
||||
end = db.Close
|
||||
case "mmm":
|
||||
var err error
|
||||
if db, err, end = doMmmInit(path); err != nil {
|
||||
readonly := c.Args().First() == "query" || c.Args().First() == "count"
|
||||
if db, err, end = doMmmInit(path, readonly); err != nil {
|
||||
if end != nil {
|
||||
end()
|
||||
}
|
||||
|
||||
@@ -11,13 +11,14 @@ import (
|
||||
"github.com/rs/zerolog"
|
||||
)
|
||||
|
||||
func doMmmInit(path string) (eventstore.Store, error, func()) {
|
||||
func doMmmInit(path string, readonly bool) (eventstore.Store, error, func()) {
|
||||
logger := zerolog.New(zerolog.NewConsoleWriter(func(w *zerolog.ConsoleWriter) {
|
||||
w.Out = os.Stderr
|
||||
}))
|
||||
mmmm := mmm.MultiMmapManager{
|
||||
Dir: filepath.Dir(path),
|
||||
Logger: &logger,
|
||||
Dir: filepath.Dir(path),
|
||||
Logger: &logger,
|
||||
ReadOnly: readonly,
|
||||
}
|
||||
if err := mmmm.Init(); err != nil {
|
||||
return nil, err, nil
|
||||
|
||||
Reference in New Issue
Block a user