Persist the right MaxTime when snapshotting

This is because we cut a new block from where the snapshotted block ends
if we restore from backups and highTimestamp would be where we should be
 starting from.

Signed-off-by: Goutham Veeramachaneni <cs14btech11014@iith.ac.in>
This commit is contained in:
Goutham Veeramachaneni 2017-07-12 13:48:13 +02:00
parent bc3fee4820
commit f1ae239c20
2 changed files with 2 additions and 1 deletions

2
db.go
View File

@ -710,7 +710,7 @@ func (db *DB) ensureHead(t int64) error {
} }
// Create another block of buffer in front if the DB is initialized or retrieving // Create another block of buffer in front if the DB is initialized or retrieving
// new data after a long gap. // new data after a long gap.
// This ensures we always have a full block width if append window. // This ensures we always have a full block width of append window.
if addBuffer { if addBuffer {
if _, err := db.createHeadBlock(mint-int64(db.opts.MinBlockDuration), mint); err != nil { if _, err := db.createHeadBlock(mint-int64(db.opts.MinBlockDuration), mint); err != nil {
return err return err

View File

@ -302,6 +302,7 @@ func (h *HeadBlock) Snapshot(snapshotDir string) error {
return errors.Wrap(err, "write snapshot") return errors.Wrap(err, "write snapshot")
} }
meta.ULID = uid meta.ULID = uid
meta.MaxTime = h.highTimestamp
if err = writeMetaFile(tmp, meta); err != nil { if err = writeMetaFile(tmp, meta); err != nil {
return errors.Wrap(err, "write merged meta") return errors.Wrap(err, "write merged meta")