aboutsummaryrefslogtreecommitdiff
path: root/models/persister.go
diff options
context:
space:
mode:
authorJulio Capote <jcapote@gmail.com>2022-12-31 03:02:43 +0000
committerJulio Capote <jcapote@gmail.com>2022-12-31 03:02:43 +0000
commit9d870999909d533cc15fbeb8a5a41d7192473a49 (patch)
tree0d3809d8fb3e5217e913c5cc6752789cf1207e69 /models/persister.go
parentc500a2be38afcbb5688537d97c7c3ee30a57dba4 (diff)
downloadcommunique-9d870999909d533cc15fbeb8a5a41d7192473a49.tar.gz
switch to storing encoded structs
Diffstat (limited to '')
-rw-r--r--models/persister.go9
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
})
}