Re: Proposal: Commit timestamp

From: Jan Wieck <JanWieck(at)Yahoo(dot)com>
To: Richard Troy <rtroy(at)ScienceTools(dot)com>
Cc: "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Markus Schiltknecht <markus(at)bluegap(dot)ch>, Zeugswetter Andreas ADI SD <ZeugswetterA(at)spardat(dot)at>, Theo Schlossnagle <jesus(at)omniti(dot)com>, Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers(at)postgresql(dot)org, Jim Nasby <decibel(at)decibel(dot)org>
Subject: Re: Proposal: Commit timestamp
Date: 2007-02-09 20:01:23
Message-ID: 45CCD313.8040306@Yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2/9/2007 2:27 PM, Richard Troy wrote:
> In general terms, "blending of replication [techniques]" means to me that
> one can have a single database instance serve as a master and as a slave
> (to use only one set of terminology), and as a multi-master, too, all
> simultaneously, letting the DBA / Architect choose which portions serve
> which roles (purposes). All replication features would respect the
> boundaries of such choices automatically, as it's all blended.

That is specifically what the changes to pg_trigger and pg_rewrite take
into account. However much you blend different techniques, a single
transaction on one server will always fall into one of three categories.
1) It could be the original operation done by the client application. B)
It could be the actions performed by the replication engine to replay a
remote transaction. And iii) it can be an administrative operation that
requires not to be propagated at all.

No matter how many different models you have in parallel, one single
transaction will be either a master, a slave or an isolated local thing.
The proposed changes allow to tell the session which of these three
roles it is playing and the triggers and rules can be configured to fire
during master/local role, slave role, always or never. That
functionality will work for master-slave as well as multi-master.

Although my current plan isn't creating such a blended system, the
proposed trigger and rule changes are designed to support exactly that
in a 100% backward compatible way.

Jan

--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck(at)Yahoo(dot)com #

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Simon Riggs 2007-02-09 20:04:37 Re: Re-ordering of OR conditions
Previous Message Richard Troy 2007-02-09 19:27:39 Re: Proposal: Commit timestamp