diff --git a/protocol/connections/peerapp.go b/protocol/connections/peerapp.go index affb595..811901b 100644 --- a/protocol/connections/peerapp.go +++ b/protocol/connections/peerapp.go @@ -113,10 +113,15 @@ func (pa *PeerApp) listen() { func (pa *PeerApp) SendMessage(message model2.PeerMessage) error { if message.Context == event.ContextGetVal { pa.getValRequests.Store(message.ID, string(message.Data)) + // sync map is apparently not guaranteed to be consistent + _, ok := pa.getValRequests.Load(message.ID) + for !ok { + log.Debugf("retrying to load value map...") + _, ok = pa.getValRequests.Load(message.ID) + } } serialized, err := json.Marshal(message) if err == nil { - //log.Debugf("sending plaintext of length %v", len(serialized)) pa.connection.Send(serialized) return nil }