From 9d4a6e2be7ee0de5818c8de1e2c2728740187491 Mon Sep 17 00:00:00 2001 From: Matt Jaffee Date: Tue, 11 Dec 2018 15:39:42 -0600 Subject: [PATCH] don't add the fragment and then remove it --- view.go | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/view.go b/view.go index 50a2e02ff..00dcf02c6 100644 --- a/view.go +++ b/view.go @@ -212,12 +212,12 @@ func (v *view) CreateFragmentIfNotExists(shard uint64) (*fragment, error) { if err == nil && msg != nil { // Broadcast a message that a new max shard was just created. if err = v.broadcaster.SendSync(msg); err != nil { - v.mu.Lock() - delete(v.fragments, shard) - v.mu.Unlock() frag.close() return nil, errors.Wrap(err, "sending createshard message") } + v.mu.Lock() + v.fragments[shard] = frag + v.mu.Unlock() } return frag, err @@ -244,9 +244,6 @@ func (v *view) createFragmentIfNotExists(shard uint64) (*fragment, *CreateShardM Shard: shard, } - // Save to lookup. - v.fragments[shard] = frag - return frag, msg, nil }