While gosspping, two different timeouts are used
- defined by context supplied by user
- defined by value of field in the GossipOptions struct
The first one defies the total time for a round of gossipping, while the second one defines the timeout for sending each message. When a sync message is received, the gossipper tries to propagate the new message by re-gossipping it. However, the gossipper now has no notion of the timeout supplied by the user (and that particular context has probably gone out scope!). Currently we use the second timeout to a call to Gossip, but the gossipping might fail if the first attempt to message a peer fails (since that uses the same timeout)
While gosspping, two different timeouts are used
- defined by context supplied by user
- defined by value of field in the
GossipOptionsstructThe first one defies the total time for a round of gossipping, while the second one defines the timeout for sending each message. When a sync message is received, the gossipper tries to propagate the new message by re-gossipping it. However, the gossipper now has no notion of the timeout supplied by the user (and that particular context has probably gone out scope!). Currently we use the second timeout to a call to
Gossip, but the gossipping might fail if the first attempt to message a peer fails (since that uses the same timeout)