Andrew Sullivan wrote:
On Fri, May 30, 2008 at 12:41:01PM -0400, Geoffrey wrote:
Are you saying that if we set the slony triggers to 'always fire', the
will not fire if we 'disable all triggers?'
As far as I know, even the changes in 8.3 don't allow you to say, "Even if I
tell you to do so later, don't stop firing this trigger." You could just
disable the _other_ triggers.
I have a better understanding as to how this whole process is supposed
to work, thus I want to present it here to make sure it will work.
We intend to execute the following on all slony triggers:
ALTER TABLE foo ENABLE ALWAYS TRIGGER bar;
Assuming this will cause the slony triggers to fire when we do the
following to disable our triggers:
SET session_replication_role TO 'replica';
The reason we have to do this is because we have a distributed database
system. That is, we have multiple databases that have a mechanism that
causes communications between these databases.
Short example.
User creates a record that must be distributed across all the databases.
There is a trigger that recognizes this occurence and therefore
generates a record in another database that will be eventually
distributed to the other databases. There is a process that reads these
records and then distributes them. The problem is we need to make sure
that when this process distributes them to the other databases, new
records are not created to redistribute these records.
Granted, there's a flaw in that approach, and it's on the schedule to be
fixed, but we've got to get the replication going first.
--
Until later, Geoffrey
Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety.
- Benjamin Franklin
_______________________________________________
Slony1-general mailing list
[email protected]
http://lists.slony.info/mailman/listinfo/slony1-general