Thread: HOOKS for Synchronous Replication?
Anyone remember this patch? http://gorda.di.uminho.pt/community/pgsqlhooks/ The discussion seems to be pretty minimal: http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php Does anyone see a need to investigate it further? Chris
Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes: > Anyone remember this patch? > http://gorda.di.uminho.pt/community/pgsqlhooks/ > The discussion seems to be pretty minimal: > http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php > Does anyone see a need to investigate it further? I had hoped to see some comments from the Slony people about it. I'd feel better about the validity of a set of hooks if more than one project agreed that it was useful/appropriate ... regards, tom lane
I can only add that patched code did not build on windows, contacted author about that and never got an answer back. Regards paolo Tom Lane <tgl@sss.pgh.pa.us> ha scritto > Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes: > > Anyone remember this patch? > > http://gorda.di.uminho.pt/community/pgsqlhooks/ > > The discussion seems to be pretty minimal: > > http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php > > Does anyone see a need to investigate it further? > > I had hoped to see some comments from the Slony people about it. > I'd feel better about the validity of a set of hooks if more than > one project agreed that it was useful/appropriate ... > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match >
On Wednesday 07 December 2005 20:24, Tom Lane wrote: > Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes: > > Anyone remember this patch? > > http://gorda.di.uminho.pt/community/pgsqlhooks/ > > The discussion seems to be pretty minimal: > > http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php > > Does anyone see a need to investigate it further? > > I had hoped to see some comments from the Slony people about it. > I'd feel better about the validity of a set of hooks if more than > one project agreed that it was useful/appropriate ... I missed seeing it all together the first time through, I'll see what I can do about taking a indepth look at it over the next few days and provide some feedback. > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match -- Darcy Buskermolen Wavefire Technologies Corp. http://www.wavefire.com ph: 250.717.0200 fx: 250.763.1759
On Thu, Dec 08, 2005 at 08:33:59AM -0800, Darcy Buskermolen wrote: > On Wednesday 07 December 2005 20:24, Tom Lane wrote: > > Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes: > > > Anyone remember this patch? > > > http://gorda.di.uminho.pt/community/pgsqlhooks/ > > > The discussion seems to be pretty minimal: > > > http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php > > > Does anyone see a need to investigate it further? > > > > I had hoped to see some comments from the Slony people about it. > > I'd feel better about the validity of a set of hooks if more than > > one project agreed that it was useful/appropriate ... > > I missed seeing it all together the first time through, I'll see what I can do > about taking a indepth look at it over the next few days and provide some > feedback. While this code might be useful, whouldn't it be much more valuable to provide hooks into xlog so that we could do non-trigger-based replication? (As well as non-trigger-based materialized views...) -- Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com Pervasive Software http://pervasive.com work: 512-231-6117 vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461
On 12/7/2005 11:24 PM, Tom Lane wrote: > Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes: >> Anyone remember this patch? >> http://gorda.di.uminho.pt/community/pgsqlhooks/ >> The discussion seems to be pretty minimal: >> http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php >> Does anyone see a need to investigate it further? > > I had hoped to see some comments from the Slony people about it. > I'd feel better about the validity of a set of hooks if more than > one project agreed that it was useful/appropriate ... I am going to look into this in the next couple of days. Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #
While this code might be useful, whouldn't it be much more valuable to
provide hooks into xlog so that we could do non-trigger-based
replication? (As well as non-trigger-based materialized views...)
If we're going to do hooks for replication, I think we should look at including xlog. Trigger-based replication is an OLTP performance killer if you're just looking to do async replication.
A general purpose log miner is also useful in many other areas besides replication.
From: pgsql-hackers-owner@postgresql.org [mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Jonah H. Harris
Sent: Thursday, December 08, 2005 11:32 AM
To: Jim C. Nasby
Cc: Darcy Buskermolen; pgsql-hackers@postgresql.org; Tom Lane; Christopher Kings-Lynne
Subject: Re: [HACKERS] HOOKS for Synchronous Replication?
On 12/8/05, Jim C. Nasby <jim@nasby.net> wrote:
While this code might be useful, whouldn't it be much more valuable to
provide hooks into xlog so that we could do non-trigger-based
replication? (As well as non-trigger-based materialized views...)
If we're going to do hooks for replication, I think we should look at including xlog. Trigger-based replication is an OLTP performance killer if you're just looking to do async replication.
On 12/8/2005 2:05 PM, Jim C. Nasby wrote: > On Thu, Dec 08, 2005 at 08:33:59AM -0800, Darcy Buskermolen wrote: >> On Wednesday 07 December 2005 20:24, Tom Lane wrote: >> > Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes: >> > > Anyone remember this patch? >> > > http://gorda.di.uminho.pt/community/pgsqlhooks/ >> > > The discussion seems to be pretty minimal: >> > > http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php >> > > Does anyone see a need to investigate it further? >> > >> > I had hoped to see some comments from the Slony people about it. >> > I'd feel better about the validity of a set of hooks if more than >> > one project agreed that it was useful/appropriate ... >> >> I missed seeing it all together the first time through, I'll see what I can do >> about taking a indepth look at it over the next few days and provide some >> feedback. > > While this code might be useful, whouldn't it be much more valuable to > provide hooks into xlog so that we could do non-trigger-based > replication? (As well as non-trigger-based materialized views...) I don't see why these would be mutually exclusive. A generic API needs to have them all. Without having looked at the patch yet, what I expect from an API is that the backend will (after initialization and becoming a member of a database) check if this database is replicated. If so load the specific shared object that implement the backend part of the replication system and then call an init() function in that. This init() function then will add callbacks to all the hooks where this particular replication system wants to be called. So one replication system might want to be called on commit, just before writing the WAL record, some other system doesn't care about that, but wants to see the WAL record after it was written. Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #
On 12/8/2005 2:05 PM, Jim C. Nasby wrote:
> On Thu, Dec 08, 2005 at 08:33:59AM -0800, Darcy Buskermolen wrote:
>> On Wednesday 07 December 2005 20:24, Tom Lane wrote:
>> > Christopher Kings-Lynne < chriskl@familyhealth.com.au> writes:
>> > > Anyone remember this patch?
>> > > http://gorda.di.uminho.pt/community/pgsqlhooks/
>> > > The discussion seems to be pretty minimal:
>> > > http://archives.postgresql.org/pgsql-hackers/2005-06/msg00859.php
>> > > Does anyone see a need to investigate it further?
>> >
>> > I had hoped to see some comments from the Slony people about it.
>> > I'd feel better about the validity of a set of hooks if more than
>> > one project agreed that it was useful/appropriate ...
>>
>> I missed seeing it all together the first time through, I'll see what I can do
>> about taking a indepth look at it over the next few days and provide some
>> feedback.
>
> While this code might be useful, whouldn't it be much more valuable to
> provide hooks into xlog so that we could do non-trigger-based
> replication? (As well as non-trigger-based materialized views...)
I don't see why these would be mutually exclusive. A generic API needs
to have them all.
Without having looked at the patch yet, what I expect from an API is
that the backend will (after initialization and becoming a member of a
database) check if this database is replicated. If so load the specific
shared object that implement the backend part of the replication system
and then call an init() function in that. This init() function then will
add callbacks to all the hooks where this particular replication system
wants to be called. So one replication system might want to be called on
commit, just before writing the WAL record, some other system doesn't
care about that, but wants to see the WAL record after it was written.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck@Yahoo.com #
---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend
I fixed the patch and now it compiles in windows. The first one did not compile because there were some problems in the Makefile. It is currently available for download at http://gorda.di.uminho.pt/community/pgsqlhooks/. Regards, Alfranio