From: Matt Joiner Date: Sat, 21 Nov 2020 02:39:04 +0000 (+1100) Subject: sqlite storage: Ensure that chunks are consecutive X-Git-Tag: v1.19.0~15 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=41ef267c1bb5514f1277ed41d730ca2c8fe02bd1;p=btrtrc.git sqlite storage: Ensure that chunks are consecutive --- diff --git a/storage/sqlite/sqlite-storage.go b/storage/sqlite/sqlite-storage.go index 2f58883a..22b4b8fd 100644 --- a/storage/sqlite/sqlite-storage.go +++ b/storage/sqlite/sqlite-storage.go @@ -319,9 +319,11 @@ func (p *provider) WriteConsecutiveChunks(prefix string, w io.Writer) (written i where name like ?||'%' order by offset`, func(stmt *sqlite.Stmt) error { + offset := stmt.ColumnInt64(1) + if offset != written { + return fmt.Errorf("got chunk at offset %v, expected offset %v", offset, written) + } r := stmt.ColumnReader(0) - //offset := stmt.ColumnInt64(1) - //log.Printf("got %v bytes at offset %v", r.Len(), offset) w1, err := io.Copy(w, r) written += w1 return err