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

RE: skip repl record (old)



I found these dates in our ldap directory.  Are these dates
used in the strcmp(re->re_timestamp, ri->ri_stel->last) comparison?

/ldap (1126> ls -al
total 22
drwxr-xr-x   5 srx      other        512 Jun  6 15:55 ./
drwxr-xr-x  35 root     root        1024 Jun  9  2001 ../
drwxr-xr-x   2 srx      other        512 Jun  8  2001 log/
drwxr-xr-x   2 srx      other        512 Jun  9  2001 replica/
-rwxr-xr-x   1 srx      other       2296 Jan 25 11:07 slapd.conf*
-rw-r--r--   1 srx      other          0 Jun  6 16:00 slapd.replog
-rw-r--r--   1 srx      other          0 Jun  6 16:00 slapd.replog.lock
-rwxr-xr-x   1 srx      other       2185 Jan 25 11:07 slave-slapd.conf*
drwxr-xr-x   2 srx      other        512 Jun  9  2001 var/


Tomás V. Arredondo
Member of Technical Staff
Unisphere Networks
7800 Congress Ave., Suite 100, Boca Raton, Fl 33487
Tel.(561)981-7051, Fax.(561)981-7001
tarredondo@unispherenetworks.com


-----Original Message-----
From: Arredondo, Tomas 
Sent: Wednesday, June 06, 2001 4:15 PM
To: 'openldap-software@OpenLDAP.org'
Subject: skip repl record (old)


Hi all,

I am getting this replication error even though I've restarted my master and
slave slapd as well as slurpd.  Any ideas on how to reset this timestamp
stuff?  I looked at the code and it was a bit criptik.  This is in 1.2.11 (a
legacy system). 

Replica localhost:33334, skip repl record for
SERVICENAME=VOIP,RETAILERNAME=9999,O=USERS,O=UMC (old)
Replica localhost:33334, skip repl record for
SERVICENAME=VOIP,RETAILERNAME=9999,O=USERS,O=UMC (old)

Thanks,
Tomas

REF:

/*
 * Return 1 if the Re's timestamp/seq combination are greater than the
 * timestamp and seq in the Ri's ri_stel member.  In other words, if we
 * find replication entries in the log which we've already processed,
 * don't process them.  If the re is "old," return 0.
 * No check for NULL pointers is done.
 */
static int
isnew(
    Ri  *ri,
    Re  *re
)
{
    int x;
    int ret;

    /* Lock the St struct to avoid a race */
    sglob->st->st_lock( sglob->st );
    x = strcmp( re->re_timestamp, ri->ri_stel->last );
    if ( x > 0 ) {
        /* re timestamp is newer */
        ret = 1;
    } else if ( x < 0 ) {
        ret = 0;
    } else {
        /* timestamps were equal */
        if ( re->re_seq > ri->ri_stel->seq ) {
            /* re seq is newer */
            ret = 1;
        } else {
            ret = 0;
        }
    }
    sglob->st->st_unlock( sglob->st );
    return ret;
}

Tomás V. Arredondo
Member of Technical Staff
Unisphere Networks
7800 Congress Ave., Suite 100, Boca Raton, Fl 33487
T 561.981.7051 F 561.981.7001
www.unispherenetworks.com