Closed nisdas closed 2 years ago
Seems like #367 is essentially the same issue too.
@nisdas can this be closed as a duplicate issue? cc @vyzo.
wait, we do that already iirc, both sides backoff.
On Fri, Oct 8, 2021, 18:40 Adin Schmahmann @.***> wrote:
@nisdas https://github.com/nisdas can this be closed as a duplicate issue? cc @vyzo https://github.com/vyzo.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/libp2p/go-libp2p-pubsub/issues/456#issuecomment-938740190, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAI4SXBAAGTXXE73BOOUM3UF4GGVANCNFSM5FLGGGZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
ah the leave/join thing. Yes, duplicate afaict.
On Fri, Oct 8, 2021, 19:56 Dimitris Vyzovitis @.***> wrote:
wait, we do that already iirc, both sides backoff.
On Fri, Oct 8, 2021, 18:40 Adin Schmahmann @.***> wrote:
@nisdas https://github.com/nisdas can this be closed as a duplicate issue? cc @vyzo https://github.com/vyzo.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/libp2p/go-libp2p-pubsub/issues/456#issuecomment-938740190, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAI4SXBAAGTXXE73BOOUM3UF4GGVANCNFSM5FLGGGZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
Alright lets shift the conversation to #367 .
Peer A
andPeer B
are subscribed to the same topic(Topic X
) and have each other in their mesh forTopic X
Peer A then decides to leave the topic and both remove each other from their mesh for this topic. However since
Peer B
receives a prune message from A ( due to A leaving the topic), it adds a backoff for that topic with that peer. If A rejoinsTopic X
before the backoff period ends, it will try to graft new peers into the mesh. And if peer B is still connected, Peer B will be regrafted into the mesh. However because Peer B already was pruned previously and had a backoff for that topic, it will penalize Peer A for trying to regraft it into the mesh forTopic X
.The correct behaviour would be for Peer A to also add a corresponding backoff for peers that it prunes this way. That way it will know not to graft in peers who had been previously pruned and had a backoff running(and therefore unintentionally being penalised). Although this would only ever happen if the period of leaving and joining the same topic is within the prune backoff period, this edge case should be handled so that peers are not unintentionally penalised.