Fix max checkpoint size check
This commit is contained in:
6
db.go
6
db.go
@@ -677,10 +677,10 @@ func (db *DB) Sync() (err error) {
|
||||
// If WAL size is greater than min threshold, attempt checkpoint.
|
||||
var checkpoint bool
|
||||
checkpointMode := CheckpointModePassive
|
||||
if newWALSize >= calcWALSize(db.pageSize, db.MinCheckpointPageN) {
|
||||
checkpoint = true
|
||||
} else if db.MaxCheckpointPageN > 0 && newWALSize >= calcWALSize(db.pageSize, db.MaxCheckpointPageN) {
|
||||
if db.MaxCheckpointPageN > 0 && newWALSize >= calcWALSize(db.pageSize, db.MaxCheckpointPageN) {
|
||||
checkpoint, checkpointMode = true, CheckpointModeRestart
|
||||
} else if newWALSize >= calcWALSize(db.pageSize, db.MinCheckpointPageN) {
|
||||
checkpoint = true
|
||||
} else if db.CheckpointInterval > 0 && !info.dbModTime.IsZero() && time.Since(info.dbModTime) > db.CheckpointInterval && newWALSize > calcWALSize(db.pageSize, 1) {
|
||||
checkpoint = true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user