mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
ea6f5bad65
SLAPI always assigning connection and operation IDs of zero for internal operations, such operations would cause a stale contextCSN to be returned from slap_get_commit_csn(). As a result, SLAPI internal updates would be invisible to replicas until an external update was made. Also, SLAPI internal operations never called slap_graduate_commit_csn() which leaked pending CSNs. Also included in this patch is a general cleanup of some of the SLAPI code. Note that we need to use a separate mutex on conn_nextid to avoid a deadlock where a post-operation plugin tries to acquire connections_mutex, having locked the per-connection mutex, while the listener thread tries to acquire the per-connection mutex (having locked connections_mutex). connection.c needs to be fixed to acquire mutexes in the same order. |
||
---|---|---|
.. | ||
slapd | ||
slurpd | ||
Makefile.in |