On Thu, Jan 04, 2007 at 01:30:54PM -0800, Alan Hodgson wrote:
> > This might still be possible by futzing with the stored procedures
> > enabling replication, but that seems less like the quick win I was
> > hoping for.
> 
> I think you could just drop the slony-generated triggers on both the parent 
> and replica(s), and then do the copy, and then restore the triggers.  I'm 
> not positive what Slony records about the OID's of those triggers, though, 
> if anything.

Not just dropping them, but the following appears to work:

First, get the tab_id for your candidate table:

SELECT tab_id FROM _slonyschema.sl_table WHERE 
        tab_relname = '[yourtablename]' AND
        tab_nspname = '[yourtableschema];

Call it _n_.  Then you do this:

1.      On the origin, do

        SELECT _slonyschema.altertablerestore(_n_);

2.      Wait.  Make sure the events propogate everywhere.

3.      On _each server_, load the bulk load file in question.
        
4.      Check your work.  They're all identical, right?

5.      On the origin, do

        SELECT _slonyschema.altertableforreplication(_n_);

I haven't figured out where it's best to add the indexes yet --
before or after.  I suspect it makes no difference.

A

-- 
Andrew Sullivan  | [EMAIL PROTECTED]
The whole tendency of modern prose is away from concreteness.
                --George Orwell
_______________________________________________
Slony1-general mailing list
[email protected]
http://gborg.postgresql.org/mailman/listinfo/slony1-general

Reply via email to