diff options
author | Julio Capote <jcapote@gmail.com> | 2022-12-31 03:02:43 +0000 |
---|---|---|
committer | Julio Capote <jcapote@gmail.com> | 2022-12-31 03:02:43 +0000 |
commit | 9d870999909d533cc15fbeb8a5a41d7192473a49 (patch) | |
tree | 0d3809d8fb3e5217e913c5cc6752789cf1207e69 /models/persister.go | |
parent | c500a2be38afcbb5688537d97c7c3ee30a57dba4 (diff) | |
download | communique-9d870999909d533cc15fbeb8a5a41d7192473a49.tar.gz |
switch to storing encoded structs
Diffstat (limited to 'models/persister.go')
-rw-r--r-- | models/persister.go | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/models/persister.go b/models/persister.go index a639fc7..669480e 100644 --- a/models/persister.go +++ b/models/persister.go @@ -41,19 +41,18 @@ func (p *Persister) Count(model model) (int, error) { return count, err } -func (p *Persister) Collect(model model) ([]PersisterResult, error) { - var result []PersisterResult +func (p *Persister) Collect(model model) ([][]byte, error) { + var result [][]byte err := p.db.View(func(txn *badger.Txn) error { opts := badger.DefaultIteratorOptions - opts.PrefetchValues = false // TODO Maybe we want true here + opts.PrefetchValues = true it := txn.NewIterator(opts) defer it.Close() prefix := []byte(model.Keybase()) for it.Seek(prefix); it.ValidForPrefix(prefix); it.Next() { item := it.Item() item.Value(func(v []byte) error { - pr := PersisterResult{Key: it.Item().Key(), Value: v} - result = append(result, pr) + result = append(result, v) return nil }) } |