|
@@ -27,6 +27,10 @@ type backend struct {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func New(path string, d time.Duration, limit int) Backend {
|
|
func New(path string, d time.Duration, limit int) Backend {
|
|
|
|
|
+ return newBackend(path, d, limit)
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+func newBackend(path string, d time.Duration, limit int) *backend {
|
|
|
db, err := bolt.Open(path, 0600, nil)
|
|
db, err := bolt.Open(path, 0600, nil)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
log.Panicf("backend: cannot open database at %s (%v)", path, err)
|
|
log.Panicf("backend: cannot open database at %s (%v)", path, err)
|
|
@@ -37,13 +41,11 @@ func New(path string, d time.Duration, limit int) Backend {
|
|
|
|
|
|
|
|
batchInterval: d,
|
|
batchInterval: d,
|
|
|
batchLimit: limit,
|
|
batchLimit: limit,
|
|
|
- batchTx: &batchTx{},
|
|
|
|
|
|
|
|
|
|
stopc: make(chan struct{}),
|
|
stopc: make(chan struct{}),
|
|
|
donec: make(chan struct{}),
|
|
donec: make(chan struct{}),
|
|
|
}
|
|
}
|
|
|
- b.batchTx.backend = b
|
|
|
|
|
- b.batchTx.Commit()
|
|
|
|
|
|
|
+ b.batchTx = newBatchTx(b)
|
|
|
go b.run()
|
|
go b.run()
|
|
|
return b
|
|
return b
|
|
|
}
|
|
}
|