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

RE: (ITS#4864) -r option "redirects" to logfile, breaks replication


I understand if the -r switch (to slurpd, not slapd) redirects the output to a file for debugging purposes, this is just not apparent in the man pages.  The man pages to not tell me that slurpd will be "redirecting" with the -r switch.

It is just usual replication I was setting up originally.

This is the variable I was using in an "openldaprc" file:
# -r replication-log-file.  Directory must be created.

When uncommenting this line, the result is that it does not open network connections to the replication slaves.  _All_ data goes to the file, none to the slaves.  This isn't documented correctly, it took me a long time to figure out why the replication was not happening.


-----Original Message-----
From: Pierangelo Masarati [mailto:ando@sys-net.it] 
Sent: Sun, March 11, 2007 11:52 PM
To: Eubank, Chris LCS:EX
Cc: openldap-its@openldap.org
Subject: Re: (ITS#4864) -r option "redirects" to logfile, breaks replication

[please keep the ITS in CC]

Eubank, Chris LCS:EX wrote:
> Am running Solaris 10, and the version I stuck in the log.
> When I created an "openldaprc" and used the variable for the 
> replication log,

What is the "variable for the replication log"?  All one usually needs to do is define a replogfile in slapd.conf(5)

> (which ends up obviously running the slurpd daemon with the -r 
> switch),

Again: there's no need to use -r if replogfile is in slapd.conf(5); if there is no replogfile in slapd.conf(5), slapd(8) will not generate any log, so slurpd(8) will have nothing to do

> it sent the replication data to the logfile and not to the replication 
> hosts being specified.

Who sent the replication data to the logfile?  slapd(8) is supposed to write replication data to the file specified in replogfile (sladp.conf(5)); slurpd(8) is supposed to read that file (whose existence and location is known by parsing slapd.conf(5)), copy the content it is able to process to its own replication log, which resides in slurpd's working directory (default or passed with -t) and is called slurpd.replog, send that content to the slaves, and remove the data that has been handled from slapd's replication log.

This is how things are expected to work.  As you may see, -r never comes into play; it's intended to be used to force slurpd processing of a different file, which may be required for special purposes.  Do you have any special needs, or are you simply trying to set up usual replication?

> Does that make more sense?

See comments above.


Ing. Pierangelo Masarati
OpenLDAP Core Team

SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
Office:   +39.02.23998309
Mobile:   +39.333.4963172
Email:    pierangelo.masarati@sys-net.it