[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#5661) contextCSN gets corrupted on the stand by mirror

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 :
> 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.


Ing. Pierangelo Masarati
OpenLDAP Core Team

SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
Office:  +39 02 23998309
Mobile:  +39 333 4963172
Fax:     +39 0382 476497
Email:   ando@sys-net.it