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

Re: (ITS#5077) syncrepl.add_cmp() infinite loop on swapped values



donn@u.washington.edu wrote:
> Full_Name: Donn Cave
> Version: 2.4.4
> OS: Red Hat Linux
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (128.95.135.150)
> 
> 
> In "while" loop at 2656, I find old->a_vals are like [..., a, b, ...] and
> new->a_vals are like [..., b, a, ...].
> 
> Matches are found at old [i] == new [k = j+1] and old [k = i+1] == new [j], but
> this just shows that neither an add nor a delete is called for, and the loop end
> is reached without having incremented i or j.
> 
> Actual attribute values I'm looking at right now in the debugger are
> eduPersonAffiliation:  old [ member, alum, employee, faculty ], new [ member,
> alum, faculty, employee ].  I built the replica from a slapcat dump on the idle
> master, started the slapd syncrepl client and applied a lot of normal
> modifications to the master, until it hit the infinite loop.  It has been a
> recurrent problem.

Now fixed in HEAD, please test.

-- 
   -- Howard Chu
   Chief Architect, Symas Corp.  http://www.symas.com
   Director, Highland Sun        http://highlandsun.com/hyc/
   Chief Architect, OpenLDAP     http://www.openldap.org/project/