Hello,
to update entry persistend in a master slave openldap environment the following steps are performed using Java : 1. The entry is removed. 2. The entry is created again.
This does not result in faulty behavior using a single/simple OpenLdap directory. Using a master slave configuration this results in unpredictable errors claiming that the item still exists (the remove statement has ran immediately before) if it is recreated.
I cannot see why the master slave environment should not behave in a tranparent way. It seems the remove statement was not executed in complete allthough the call is synchronous.
Which additional information are required to analyse the problem?
Do similar problems exist/ is this a known problem?
Regards,
Desiree
Desiree Klecker wrote:
to update entry persistend in a master slave openldap environment the following steps are performed using Java :
- The entry is removed.
- The entry is created again.
This does not result in faulty behavior using a single/simple OpenLdap directory. Using a master slave configuration this results in unpredictable errors claiming that the item still exists (the remove statement has ran immediately before) if it is recreated.
I cannot see why the master slave environment should not behave in a tranparent way. It seems the remove statement was not executed in complete allthough the call is synchronous.
Which additional information are required to analyse the problem?
Do similar problems exist/ is this a known problem?
Nobody can answer any meaningful without knowing the OpenLDAP version(s) used and the actual setup.
Note that some implementors tend to ignore read-after-write issues with replication setups where write requests go to the provider and read requests are answered by the consumer.
Ciao, Michael.
openldap-technical@openldap.org