ali.pouya@free.fr wrote:
I made a new directory with only one contextCSN (SID=002) as you recommended, and reproduced the contextCSN corruption problem several times.
Example1 : contextCSN:: 0L0NojA5MDIxMjU5NDkuNzMwMjg1WiMwMDAwMDAjMDAyIzAwMDAwMA==
The four corrupted bytes at the beginning are : D0 BD 02 A2 (hex)
Example2 : contextCSN:: 4I54oTA5MDIxNTE5MTYuMjYzNDIxWiMwMDAwMDAjMDAyIzAwMDAwMA==
The four corrupted bytes at the beginning are : E0 8E 78 A1 (hex)
I insist on the fact that the problem heppens ONLY if I use TWO syncrepl directives as recommended in the Admin Guide. If I use only ONE syncrepl directive, I don't reproduce the problem and the mirrors get synchronized correctly (whichever mirror side I use for writing). Also the problem happens on the stand by mirror only when therer are write operations on the active mirror (> 1000 writes per minute).
I do not understand the interest of using TWO syncrepl directives for mirrormode.
Well, going back to your initial posting, I think you are somehow correct. Rather than not seeing the point of having two syncrepl statements (of which only one is supposed to be active), I see it as an inconsistent and potentially dangerous configuration. In fact, the only advantage of having two syncrepl statements is related to being able to share the same configuration among two symmetric servers (mirror mode, multimaster, ...), using the serverID directive to determine what is the "right" one. But in that case, you'd need to have multiple serverID directives as well, with the URI field set. I set up a test system with your configuration, and loaded it very heavily, while running the server that's supposed to screw up under valgrind. I haven't seen any issue yet, though.
p.
Ing. Pierangelo Masarati OpenLDAP Core Team
SysNet s.r.l. via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it ----------------------------------- Office: +39 02 23998309 Mobile: +39 333 4963172 Fax: +39 0382 476497 Email: ando@sys-net.it -----------------------------------