Use file store by default (as opposed to memory store) (#1498)
* Use file store by default (as opposed to memory store) * Default table for file store
This commit is contained in:
parent
71538adfdc
commit
aaee01b1a7
@ -10,7 +10,7 @@ import (
|
||||
gcli "github.com/micro/go-micro/v2/client/grpc"
|
||||
memTrace "github.com/micro/go-micro/v2/debug/trace/memory"
|
||||
gsrv "github.com/micro/go-micro/v2/server/grpc"
|
||||
memStore "github.com/micro/go-micro/v2/store/memory"
|
||||
fileStore "github.com/micro/go-micro/v2/store/file"
|
||||
)
|
||||
|
||||
func init() {
|
||||
@ -19,7 +19,7 @@ func init() {
|
||||
// default server
|
||||
server.DefaultServer = gsrv.NewServer()
|
||||
// default store
|
||||
store.DefaultStore = memStore.NewStore()
|
||||
store.DefaultStore = fileStore.NewStore()
|
||||
// set default trace
|
||||
trace.DefaultTracer = memTrace.NewTracer()
|
||||
}
|
||||
|
@ -17,6 +17,16 @@ import (
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
var (
|
||||
// DefaultDatabase is the namespace that the bbolt store
|
||||
// will use if no namespace is provided.
|
||||
DefaultDatabase = "micro"
|
||||
// DefaultTable when none is specified
|
||||
DefaultTable = "micro"
|
||||
// DefaultDir is the default directory for bbolt files
|
||||
DefaultDir = os.TempDir()
|
||||
)
|
||||
|
||||
// NewStore returns a memory store
|
||||
func NewStore(opts ...store.Option) store.Store {
|
||||
s := &fileStore{
|
||||
@ -36,18 +46,17 @@ type fileStore struct {
|
||||
}
|
||||
|
||||
func (m *fileStore) Init(opts ...store.Option) error {
|
||||
// m.store.Flush()
|
||||
for _, o := range opts {
|
||||
o(&m.options)
|
||||
}
|
||||
if m.options.Database == "" {
|
||||
m.options.Database = "default"
|
||||
m.options.Database = DefaultDatabase
|
||||
}
|
||||
if m.options.Table == "" {
|
||||
// bbolt requires bucketname to not be empty
|
||||
m.options.Table = "default"
|
||||
m.options.Table = DefaultTable
|
||||
}
|
||||
dir := filepath.Join(os.TempDir(), "micro")
|
||||
dir := filepath.Join(DefaultDir, "micro")
|
||||
fname := m.options.Database + ".db"
|
||||
_ = os.Mkdir(dir, 0700)
|
||||
m.dir = dir
|
||||
|
Loading…
x
Reference in New Issue
Block a user