From a5e2bea04c2b1dd59eb06b8965d5288fc9e96a7c Mon Sep 17 00:00:00 2001 From: mcrakhman Date: Wed, 24 May 2023 21:47:59 +0200 Subject: [PATCH] Update message pool to include optional context deadline --- commonspace/objectsync/msgpool.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/commonspace/objectsync/msgpool.go b/commonspace/objectsync/msgpool.go index db6a15e4..19098ace 100644 --- a/commonspace/objectsync/msgpool.go +++ b/commonspace/objectsync/msgpool.go @@ -53,9 +53,11 @@ func newMessagePool(peerManager peermanager.PeerManager, messageHandler MessageH func (s *messagePool) SendSync(ctx context.Context, peerId string, msg *spacesyncproto.ObjectSyncMessage) (reply *spacesyncproto.ObjectSyncMessage, err error) { s.updateLastUsage() - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, time.Minute) - defer cancel() + if _, ok := ctx.Deadline(); !ok { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, time.Minute) + defer cancel() + } newCounter := s.counter.Add(1) msg.RequestId = genReplyKey(peerId, msg.ObjectId, newCounter) log.InfoCtx(ctx, "mpool sendSync", zap.String("requestId", msg.RequestId))