Peter Geoghegan peter.geoghegan86 at gmail.com
Sun Dec 9 15:09:13 PST 2007
David,

Unfortunately, changes to the database may be quite varied. We aren't
talking about massive amounts of data though - in the order a few dozen rows
per update per slave. Confining that to a single transaction isn't
realistic, though.

How would I go about applying this horrifically kludgy solution? Would the
following be do-able ? :

1. Make changes to the database with no Slon daemons running, through my C++
front end.

2. Start the Slon daemon for the first subscriber using my application .
Have the slon daemon update changes made to the db to its subscriber as
necessary, in a reasonable space of time.

3. Shutdown the Slon daemon when it was finished. I'd need some mechanism to
tell my application that it was finished, so that it'd know when to do this.
I'm using the libpqxx API ( a C++ wrapper of libpq).

4. Repeat the process for some or all other subscribers, as the user may or
may not require changes to be immediately replicated to all subscribers.

This is clearly a bit of a hack - another option would be to use log
shipping, and to transfer the log to my application (over ftp or something)
as necessary.

It would be once again necessary (or at least desirable) to run the Slon
daemon only when doing the update - anything more would be superfluous. So
I'd still have to be able to monitor the Slon daemon's progress.

Could I monitor the slon daemon's progress from my MS Windows MFC C++
application, preferably without spawning DOS boxes?

You may very well not be up on windows (I'm not really a windows guy
myself), in which case I'd appreciate it if you could offer an equivalent
solution for Linux - I'll probably be able to apply the same logic in
windows,

Thanks a lot,
Peter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.slony.info/pipermail/slony1-general/attachments/20071209/=
e5707194/attachment.htm


More information about the Slony1-general mailing list