Use the same pattern of cyclic.Decoders as cyclic.Encoders, otherwise object maps don't match
Change-Id: I80822bf2ce233398cf3a9c07b267ef58f0f6c70a
diff --git a/database/store/small.go b/database/store/small.go
index 1e2d18c..504893d 100644
--- a/database/store/small.go
+++ b/database/store/small.go
@@ -79,10 +79,10 @@
records := make(map[binary.ID][]byte)
// Use a buffered reader to quickly read the archive records
- d := cyclic.Decoder(vle.Reader(bufio.NewReaderSize(data, 256<<10)))
+ reader := vle.Reader(bufio.NewReaderSize(data, 256<<10))
for {
r := &keyValue{}
- if err := d.Value(r); err != io.EOF {
+ if err := cyclic.Decoder(reader).Value(r); err != io.EOF {
if err != nil {
panic(err)
}
@@ -181,7 +181,7 @@
go func() {
// Output records using buffered IO.
writer := bufio.NewWriterSize(compacting, 256<<10)
- e := cyclic.Encoder(vle.Writer(writer))
+ w := vle.Writer(writer)
size := 0
waste := 0
@@ -202,7 +202,7 @@
waste += prevSize
}
- err := e.Value(insert)
+ err := cyclic.Encoder(w).Value(insert)
if err != nil {
panic(err)
}
@@ -226,7 +226,7 @@
}
for _, record := range recordsCopyArray {
- err := e.Value(record)
+ err := cyclic.Encoder(w).Value(record)
if err != nil {
panic(err)
}
@@ -383,8 +383,7 @@
buffer: data,
}
- e := cyclic.Encoder(vle.Writer(s.data))
- err := e.Value(record)
+ err := cyclic.Encoder(vle.Writer(s.data)).Value(record)
if err != nil {
panic(err)
}
diff --git a/database/store/unbounded_archive.go b/database/store/unbounded_archive.go
index 60ff31d..fe7b17a 100644
--- a/database/store/unbounded_archive.go
+++ b/database/store/unbounded_archive.go
@@ -53,10 +53,10 @@
records := make(map[binary.ID]span)
// Use a buffered reader to quickly read the active records
- d := cyclic.Decoder(vle.Reader(bufio.NewReaderSize(index, 256<<10)))
+ reader := vle.Reader(bufio.NewReaderSize(index, 256<<10))
for {
var r record
- if err := r.decode(d); err != io.EOF {
+ if err := r.decode(cyclic.Decoder(reader)); err != io.EOF {
if err != nil {
panic(err)
}