Skip to content
Snippets Groups Projects
Commit b2b7d48e authored by Richard T. Carback III's avatar Richard T. Carback III
Browse files

Make sure deletes are written to disk.

parent 9cf80eab
No related branches found
No related tags found
3 merge requests!510Release,!207WIP: Client Restructure,!203Symmetric broadcast
...@@ -2,6 +2,8 @@ package store ...@@ -2,6 +2,8 @@ package store
import ( import (
"encoding/base64" "encoding/base64"
"sync"
"github.com/cloudflare/circl/dh/sidh" "github.com/cloudflare/circl/dh/sidh"
"github.com/pkg/errors" "github.com/pkg/errors"
jww "github.com/spf13/jwalterweatherman" jww "github.com/spf13/jwalterweatherman"
...@@ -10,7 +12,6 @@ import ( ...@@ -10,7 +12,6 @@ import (
"gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/client/storage/versioned"
"gitlab.com/elixxir/crypto/contact" "gitlab.com/elixxir/crypto/contact"
"gitlab.com/xx_network/primitives/id" "gitlab.com/xx_network/primitives/id"
"sync"
) )
type ReceivedRequest struct { type ReceivedRequest struct {
...@@ -61,15 +62,14 @@ func loadReceivedRequest(kv *versioned.KV, partner *id.ID) ( ...@@ -61,15 +62,14 @@ func loadReceivedRequest(kv *versioned.KV, partner *id.ID) (
*ReceivedRequest, error) { *ReceivedRequest, error) {
c, err := util.LoadContact(kv, partner) c, err := util.LoadContact(kv, partner)
//loading with the new prefix path failed, try with the new
if err != nil { if err != nil {
return nil, errors.WithMessagef(err, "Failed to Load "+ return nil, errors.WithMessagef(err, "Failed to Load "+
"Received Auth Request Contact with %s", "Received Auth Request Contact with %s",
partner) partner)
} }
key, err := util.LoadSIDHPublicKey(kv, util.MakeSIDHPublicKeyKey(partner)) key, err := util.LoadSIDHPublicKey(kv,
util.MakeSIDHPublicKeyKey(partner))
if err != nil { if err != nil {
return nil, errors.WithMessagef(err, "Failed to Load "+ return nil, errors.WithMessagef(err, "Failed to Load "+
"Received Auth Request Partner SIDHkey with %s", "Received Auth Request Partner SIDHkey with %s",
......
...@@ -77,7 +77,8 @@ func NewOrLoadStore(kv *versioned.KV, grp *cyclic.Group, srh SentRequestHandler) ...@@ -77,7 +77,8 @@ func NewOrLoadStore(kv *versioned.KV, grp *cyclic.Group, srh SentRequestHandler)
"unmarshal SentRequestMap") "unmarshal SentRequestMap")
} }
jww.TRACE.Printf("%d found when loading AuthStore", len(requestList)) jww.TRACE.Printf("%d found when loading AuthStore, prefix %s",
len(requestList), kv.GetPrefix())
for _, rDisk := range requestList { for _, rDisk := range requestList {
...@@ -212,7 +213,8 @@ func (s *Store) AddReceived(c contact.Contact, key *sidh.PublicKey, ...@@ -212,7 +213,8 @@ func (s *Store) AddReceived(c contact.Contact, key *sidh.PublicKey,
round rounds.Round) error { round rounds.Round) error {
s.mux.Lock() s.mux.Lock()
defer s.mux.Unlock() defer s.mux.Unlock()
jww.DEBUG.Printf("AddReceived new contact: %s", c.ID) jww.DEBUG.Printf("AddReceived new contact: %s, prefix: %s",
c.ID, s.kv.GetPrefix())
if _, ok := s.receivedByID[*c.ID]; ok { if _, ok := s.receivedByID[*c.ID]; ok {
return errors.Errorf("Cannot add contact for partner "+ return errors.Errorf("Cannot add contact for partner "+
...@@ -270,6 +272,7 @@ func (s *Store) HandleReceivedRequest(partner *id.ID, handler func(*ReceivedRequ ...@@ -270,6 +272,7 @@ func (s *Store) HandleReceivedRequest(partner *id.ID, handler func(*ReceivedRequ
} }
delete(s.receivedByID, *partner) delete(s.receivedByID, *partner)
s.save()
rr.delete() rr.delete()
return nil return nil
...@@ -312,6 +315,7 @@ func (s *Store) HandleSentRequest(partner *id.ID, handler func(request *SentRequ ...@@ -312,6 +315,7 @@ func (s *Store) HandleSentRequest(partner *id.ID, handler func(request *SentRequ
} }
delete(s.receivedByID, *partner) delete(s.receivedByID, *partner)
s.save()
sr.delete() sr.delete()
return nil return nil
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment