Skip to content

Commit

Permalink
Merge pull request #36 from libp2p/txn-err
Browse files Browse the repository at this point in the history
Adapt peerstore for ds.NewTransaction() now returning error
  • Loading branch information
raulk authored Sep 27, 2018
2 parents 0bff9f8 + 22c953c commit 43ad732
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 9 deletions.
31 changes: 25 additions & 6 deletions p2p/host/peerstore/pstoreds/addr_book.go
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,10 @@ func (mgr *dsAddrBook) dbInsert(keys []ds.Key, addrs []ma.Multiaddr, ttl time.Du
exp = time.Now().Add(ttl)
)

txn := mgr.ds.NewTransaction(false)
txn, err := mgr.ds.NewTransaction(false)
if err != nil {
return nil, err
}
defer txn.Discard()

ttltxn := txn.(ds.TTLDatastore)
Expand Down Expand Up @@ -290,7 +293,10 @@ func (mgr *dsAddrBook) dbUpdateTTL(p peer.ID, oldTTL time.Duration, newTTL time.
err error
)

txn := mgr.ds.NewTransaction(false)
txn, err := mgr.ds.NewTransaction(false)
if err != nil {
return err
}
defer txn.Discard()

if results, err = txn.Query(q); err != nil {
Expand Down Expand Up @@ -342,7 +348,10 @@ func (mgr *dsAddrBook) Addrs(p peer.ID) []ma.Multiaddr {
}
}

txn := mgr.ds.NewTransaction(true)
txn, err := mgr.ds.NewTransaction(true)
if err != nil {
return nil
}
defer txn.Discard()

if results, err = txn.Query(q); err != nil {
Expand Down Expand Up @@ -382,7 +391,11 @@ func (mgr *dsAddrBook) PeersWithAddrs() peer.IDSlice {
err error
)

txn := mgr.ds.NewTransaction(true)
txn, err := mgr.ds.NewTransaction(true)
if err != nil {
log.Error(err)
return peer.IDSlice{}
}
defer txn.Discard()

if results, err = txn.Query(q); err != nil {
Expand Down Expand Up @@ -456,7 +469,10 @@ func (mgr *dsAddrBook) ClearAddrs(p peer.ID) {
func (mgr *dsAddrBook) dbDelete(keys []ds.Key) error {
var err error

txn := mgr.ds.NewTransaction(false)
txn, err := mgr.ds.NewTransaction(false)
if err != nil {
return err
}
defer txn.Discard()

for _, key := range keys {
Expand All @@ -479,7 +495,10 @@ func (mgr *dsAddrBook) dbDelete(keys []ds.Key) error {
func (mgr *dsAddrBook) dbDeleteIter(prefix ds.Key) error {
q := query.Query{Prefix: prefix.String(), KeysOnly: true}

txn := mgr.ds.NewTransaction(false)
txn, err := mgr.ds.NewTransaction(false)
if err != nil {
return err
}
defer txn.Discard()

results, err := txn.Query(q)
Expand Down
6 changes: 3 additions & 3 deletions p2p/host/peerstore/pstoreds/ds_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ func BenchmarkBaselineBadgerDatastorePutEntry(b *testing.B) {

b.ResetTimer()
for i := 0; i < b.N; i++ {
txn := bds.NewTransaction(false)
txn, _ := bds.NewTransaction(false)

key := ds.RawKey(fmt.Sprintf("/key/%d", i))
txn.Put(key, []byte(fmt.Sprintf("/value/%d", i)))
Expand All @@ -37,7 +37,7 @@ func BenchmarkBaselineBadgerDatastoreGetEntry(b *testing.B) {
bds, closer := badgerStore(b)
defer closer()

txn := bds.NewTransaction(false)
txn, _ := bds.NewTransaction(false)
keys := make([]ds.Key, 1000)
for i := 0; i < 1000; i++ {
key := ds.RawKey(fmt.Sprintf("/key/%d", i))
Expand All @@ -50,7 +50,7 @@ func BenchmarkBaselineBadgerDatastoreGetEntry(b *testing.B) {

b.ResetTimer()
for i := 0; i < b.N; i++ {
txn := bds.NewTransaction(true)
txn, _ := bds.NewTransaction(true)
if _, err := txn.Get(keys[i%1000]); err != nil {
b.Fatal(err)
}
Expand Down

0 comments on commit 43ad732

Please sign in to comment.