From 34ebc653819716eb958b93854316667d5aca025c Mon Sep 17 00:00:00 2001 From: Adin Schmahmann Date: Fri, 3 May 2019 15:33:17 -0400 Subject: [PATCH 1/2] Subscribe to PubSub topic before Publishing --- pubsub.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pubsub.go b/pubsub.go index 5f7d8a7..b35341e 100644 --- a/pubsub.go +++ b/pubsub.go @@ -94,6 +94,10 @@ func (p *PubsubValueStore) PutValue(ctx context.Context, key string, value []byt p.mx.Unlock() } + if err := p.Subscribe(key); err != nil { + return err + } + log.Debugf("PubsubPublish: publish value for key", key) return p.ps.Publish(topic, value) } From 05e81e9c16f855cb708828e522def5217ea20db3 Mon Sep 17 00:00:00 2001 From: aschmahmann Date: Fri, 3 May 2019 18:41:21 -0400 Subject: [PATCH 2/2] Removed unnecessary bootstrap code --- pubsub.go | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/pubsub.go b/pubsub.go index b35341e..67b9de2 100644 --- a/pubsub.go +++ b/pubsub.go @@ -82,18 +82,6 @@ func (p *PubsubValueStore) PutValue(ctx context.Context, key string, value []byt // Encode to "/record/base64url(key)" topic := KeyToTopic(key) - p.mx.Lock() - _, bootstraped := p.subs[key] - - if !bootstraped { - p.subs[key] = nil - p.mx.Unlock() - - bootstrapPubsub(p.ctx, p.cr, p.host, topic) - } else { - p.mx.Unlock() - } - if err := p.Subscribe(key); err != nil { return err }