Ticket #374 - consumer can go into total update mode for no reason
https://fedorahosted.org/389/ticket/374
Reviewed by: rmeggins
Contributed by: telackey (Thanks!)
Branch: master
Fix Description: In the consumer replication extop code, ensure exclusive
access to the connection extension by checking the new fields, connid and
opid. If the connid and opid in the extension are not the same as the
current thread, just return an LDAP_BUSY to the supplier. Otherwise, set
the connid and opid of the current thread in the extension. This should
ensure that no other thread can access the connection extension.
Includes some test code that should help cause the problem during an
incremental update. Set the environment variable
export SLAPD_TEST_TICKET_374=1
in /etc/sysconfig/dirsrv-INST and restart the server.
Platforms tested: RHEL6 x86_64
Flag Day: no
Doc impact: no
(cherry picked from commit f1e01ac448ad5eb3a42b380d8a1f53d35bcf9fed)