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

Re: (ITS#5640) slapd scans too many objects at startup



----- "ali pouya" <ali.pouya@free.fr> wrote:

> Gavin Henry <ghenry@suretecsystems.com> wrote :
> 
> > ali.pouya@free.fr wrote:
> 
> > Why do you change serverID?
> In a configuration with two mirrors I have to set two different IDs.
> The problem
> is that the replica defaults to serverID=0, whilst I understood that
> the replica
> does not need a serverID.
> > So you're saying serverID=0, serverID=1, serverID=2 makes a
> difference
> > from serverID=1, serverID=2, serverID=3?
> >
> > They only have to be unique.
> >
> 
> Yes. Let me put the problem another way :
> 
> In 2.4.11 each time you start slapd (master as well as replica) it
> scans (reads)
> all of the objects being more recent than its contextCSN value having
> ITS OWN
> serverID. Wouldn't it be bettre that it scans only the objects more
> recent thant
> the moste recent value of the contextCSN ?
> If y have millions of such entries the scanning taks too long.
> Is this a bug or a normal feature ?

This is intended:

 servers/slapd/overlays/syncprov.c in HEAD
 615 |   case FIND_MAXCSN:
 616 |   |   cf.f_choice = LDAP_FILTER_GE;
 617 |   |   /* If there are multiple CSNs, use the one with our serverID */
 618 |   |   for ( i=0; i<si->si_numcsns; i++) {
 619 |   |   |   if ( slap_serverID == si->si_sids[i] ) {
 620 |   |   |   |   maxid = i;
 621 |   |   |   |   break;
 622 |   |   |   }
 623 |   |   }
 624 |   |   if ( i == si->si_numcsns ) {
 625 |   |   |   /* No match: this is multimaster, and none of the content in the DB
 626 |   |   |    * originated locally. Treat like no CSN.
 627 |   |   |    */
 628 |   |   |   return LDAP_NO_SUCH_OBJECT;
 629 |   |   }

> 
> > There are no writes above, you've only shown searches.
> 
> Yes there are no writes because this is an extract of the startup
> log.
> 
> > How many times do you restart slapd and why?
> 
> In production I restart slapd once a day for backup. But the problem
> is that if
> I restart it for any reason I have to wait to much for the service to
> be
> available.

A cold backup of the bdb dir I take it.

-- 
Kind Regards,

Gavin Henry.
OpenLDAP Engineering Team.

E ghenry@OpenLDAP.org

Community developed LDAP software.

http://www.openldap.org/project/