On Friday, September 21, 2012 08:12:26 PM md@rpzdesign.com wrote:
> Heikki:
>
> Thanks for the response. I am writing an external replication engine
> and putting hooks into postgres to send "signals" via a unix socket to
> the outside world.
>
> All of the logic and implementation will occur OUTSIDE the postgres
> codebase and
> will not interfere with any WAL based replication schemes.
>
> The usual "Trigger" level asynch replication does on not suffice since
> it does not handle
> new databases, new schemas, new tables, new indexes, alter everything,
> new functions, etc.
>
> So I started putting into utility.c->xxx_ProcessUtility(..., stmt*
> parsetree,....) so that discrete
>
> Does anybody have other ideas where to better locate the "Hooks" for
> external replication/signaling
> than utility.c?
Look into the new event triggers started recently.
Commits
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=3855968f328918b6cd1401dd11d109d471a54d40
and
3a0e4d36ebd7f477822d5bae41ba121a40d22ccc
Look into earlier discussions around event/command triggers why putting stuff
plainly into ProcessUtility is not all that helpful...
Greetings,
Andres
-- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services