wp
This commit is contained in:
@@ -9,7 +9,6 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"gordenko.dev/dima/qb"
|
||||
"gordenko.dev/dima/qb/inbox"
|
||||
"gordenko.dev/dima/qb/recovery"
|
||||
"gordenko.dev/dima/qb/storage"
|
||||
@@ -69,21 +68,20 @@ func New(opt Options) (_ *Database, err error) {
|
||||
s := &Database{
|
||||
dir: opt.Dir,
|
||||
databaseName: opt.DatabaseName,
|
||||
//metricLockEntries: make(map[uint32]*metricLockEntry),
|
||||
//dataFreeList: dataFreeList,
|
||||
//indexFreeList: indexFreeList,
|
||||
tcpPort: opt.TCPPort,
|
||||
logfile: opt.Logfile,
|
||||
logger: log.New(opt.Logfile, "", log.LstdFlags),
|
||||
exitCh: opt.ExitCh,
|
||||
waitGroup: opt.WaitGroup,
|
||||
tcpPort: opt.TCPPort,
|
||||
logfile: opt.Logfile,
|
||||
logger: log.New(opt.Logfile, "", log.LstdFlags),
|
||||
exitCh: opt.ExitCh,
|
||||
waitGroup: opt.WaitGroup,
|
||||
}
|
||||
|
||||
recoveryReport, err := recovery.Recovery(s.dir, s.databaseName)
|
||||
if err != nil {
|
||||
return
|
||||
return nil, fmt.Errorf("recovery.Recovery: %s", err)
|
||||
}
|
||||
|
||||
fmt.Printf("%#v\n", recoveryReport)
|
||||
|
||||
storageInbox := inbox.New()
|
||||
s.workerInbox = inbox.New()
|
||||
|
||||
@@ -99,18 +97,21 @@ func New(opt Options) (_ *Database, err error) {
|
||||
WaitGroup: s.waitGroup,
|
||||
})
|
||||
if err != nil {
|
||||
qb.Abort(qb.CreateChangesWriterFailed, err)
|
||||
|
||||
return nil, fmt.Errorf("storage.NewWriter: %s", err)
|
||||
}
|
||||
|
||||
fmt.Println("storage created")
|
||||
|
||||
s.worker = worker.New(worker.Options{
|
||||
Inbox: s.workerInbox,
|
||||
StorageInbox: storageInbox,
|
||||
//Metrics: make(map[uint32]*_metric), FIX
|
||||
Dir: opt.Dir,
|
||||
ExitCh: opt.ExitCh,
|
||||
WaitGroup: opt.WaitGroup,
|
||||
Inbox: s.workerInbox,
|
||||
StorageInbox: storageInbox,
|
||||
ReplayMetrics: recoveryReport.ReplayMetrics,
|
||||
Dir: opt.Dir,
|
||||
DatabaseName: opt.DatabaseName,
|
||||
ExitCh: opt.ExitCh,
|
||||
WaitGroup: opt.WaitGroup,
|
||||
})
|
||||
fmt.Println("worker created")
|
||||
return s, nil
|
||||
}
|
||||
|
||||
@@ -120,6 +121,7 @@ func (s *Database) ListenAndServe() (err error) {
|
||||
return fmt.Errorf("net.Listen: %s; port=%d", err, s.tcpPort)
|
||||
}
|
||||
|
||||
//s.waitGroup.Add(1)
|
||||
go s.storage.Run()
|
||||
|
||||
// s.atree, err = atree.New(atree.Options{
|
||||
|
||||
Reference in New Issue
Block a user