Merge pull request #4667 from guggero/auto-compact
channeldb/kvdb/bolt: automatically compact database on startup
This commit is contained in:
21 files changed
+659
-94
No files matched your search
+10
-4
@@ -26,7 +26,9 @@ type DB struct {
|
||||
func DefaultDB() *DB {
|
||||
return &DB{
|
||||
Backend: BoltBackend,
|
||||
Bolt: &kvdb.BoltConfig{},
|
||||
Bolt: &kvdb.BoltConfig{
|
||||
AutoCompactMinAge: kvdb.DefaultBoltAutoCompactMinAge,
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
@@ -81,9 +83,13 @@ func (db *DB) GetBackends(ctx context.Context, dbPath string,
|
||||
}
|
||||
}
|
||||
|
||||
localDB, err = kvdb.GetBoltBackend(
|
||||
dbPath, dbName, !db.Bolt.SyncFreelist,
|
||||
)
|
||||
localDB, err = kvdb.GetBoltBackend(&kvdb.BoltBackendConfig{
|
||||
DBPath: dbPath,
|
||||
DBFileName: dbName,
|
||||
NoFreelistSync: !db.Bolt.SyncFreelist,
|
||||
AutoCompact: db.Bolt.AutoCompact,
|
||||
AutoCompactMinAge: db.Bolt.AutoCompactMinAge,
|
||||
})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user