https://bugs.openldap.org/show_bug.cgi?id=9356
Issue ID: 9356 Summary: Add list of peerSIDs to consumer cookie to reduce cross traffic Product: OpenLDAP Version: 2.5 Hardware: All OS: All Status: UNCONFIRMED Severity: normal Priority: --- Component: slapd Assignee: bugs@openldap.org Reporter: quanah@openldap.org Target Milestone: ---
If we add a list of peersids to the cookie, each consumer can tell the providers who else the consumers talk to and then the provider can omit sending updates to that consumer, originating from those peers
There's some special handling needed if a connection dies
If a consumer loses one of its peer connections, and after N retries is still not connected, it should send a new cookie to its remaining peers saying "here's my new peer list" with the missing one removed. Likewise, if a retry eventually connects again, it can send a new cookie again
Make that peer list reset configurable in the syncrepl config stanza. This can help account for end admin knowledge that some links may be more or less stable than other ones.
The idea here is that if one of your other peers can still see the missing peer, they can start routing updates to you again
It should abandon all existing persist sessions and send a new sync search with the new cookie to all remaining peers
For consumer side, also means adding the sid for a given provider into the syncrepl stanza to save on having to try and discover the peer sid.
https://bugs.openldap.org/show_bug.cgi?id=9356
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |2.5.0 Keywords| |OL_2_5_REQ, replication
https://bugs.openldap.org/show_bug.cgi?id=9356
--- Comment #1 from Quanah Gibson-Mount quanah@openldap.org --- Another possibility on listing peers would be to make the serverid: <id> <url> attribute available for consumers, and if they don't match the URL and multiprovider is set to false, then we know we're a consumer and those are our peers and the peer serverIDs
https://bugs.openldap.org/show_bug.cgi?id=9356
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|2.5.0 |2.5.1
https://bugs.openldap.org/show_bug.cgi?id=9356
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|OL_2_5_REQ | Severity|normal |enhancement Target Milestone|2.5.1 |2.6.0
https://bugs.openldap.org/show_bug.cgi?id=9356
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |reviewed
https://bugs.openldap.org/show_bug.cgi?id=9356
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|2.6.0 |2.7.0
https://bugs.openldap.org/show_bug.cgi?id=9356
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|reviewed |
https://bugs.openldap.org/show_bug.cgi?id=9356
--- Comment #2 from Ondřej Kuzník ondra@mistotebe.net --- Not as easy - https://git.openldap.org/openldap/openldap/-/merge_requests/145#note_1543: If we ever decide to only send some modifications based on whether there is another path to the replica (to reduce message amplification), we would still need to send all modRDNs at least as they need to stay serialised for the same entry. Otherwise we'd need to delay their processing until we can resolve the whole chain or renames (and a rename of A->B->C->B->D could still go wrong).
https://bugs.openldap.org/show_bug.cgi?id=9356
--- Comment #3 from Ondřej Kuzník ondra@mistotebe.net --- Coming at it from the consumer and shutting down links that we think we don't need, we'd need to keep running spanning tree detection all the time, that's not possible with the current syncrepl/syncprov design.
https://bugs.openldap.org/show_bug.cgi?id=9356
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|2.7.0 |3.0.0