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

RE: faked transactions



> -----Original Message-----
> From: owner-openldap-software@OpenLDAP.org
> [mailto:owner-openldap-software@OpenLDAP.org]On Behalf Of Nahuel Greco

> There is a way to stop the LDAP Slave server resuming the client's
> searches but without closing the connections to them, and then
> make it retrieve the update from the Master and resume their
> operations
> restarting in a transparent way to the clients?

No. If you could set the clients to automatically retry after a connection
closes though, then this wouldn't be a problem.

> Note, because the volume of my directory, and the fact that the
> master and slave server will run in the same physical machine but
> in different ports, is also possible to make the "synchronization"
> copying the database files from the master to the slave, but the
> problem of stoping the slave without breaking the connections to
> the clients persists.

You could create a proxy server for the clients. The proxy would never break
its connections to the clients, but could redirect itself to one of the
slaves whenever the administrator completed a transaction. With the current
OpenLDAP release you can accomplish this like so:

  admin --> LDAP Referral Server
		regular database:
			o=myorg
			  ref: ldap://data1:port/o=myorg
		LDAP Client Server
		back-ldap database
		o=myorg
			points to LDAP Referral Server
		LDAP Data Servers (2 instances)
			o=myorg

clients connect only to back-ldap. Whenever the admin completes a
transaction, LDAPmodify the referral to point to the updated data server. You
will need two data servers, data1 and data2. When the master is updating
data1, the clients will be reading from data2. When the master completes a
transaction, and toggles the referral, then the clients can read from data1
and the master can proceed to update data2. Configure both data servers for
full replication. After the master completes a transaction on data1 and
toggles the referral, run slurpd in one-shot mode to bring data2 up to date.
And so on. With the exception of slurpd, no server restarts are needed.

  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support