Re: Bi-Directional replication client awareness

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Martin Gudmundsson <martingudmundsson(at)gmail(dot)com>
Cc: Craig Ringer <craig(at)2ndquadrant(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Bi-Directional replication client awareness
Date: 2014-07-12 12:48:02
Message-ID: 20140712124802.GC3494@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2014-07-12 14:37:02 +0200, Martin Gudmundsson wrote:
> > It's possible to do it to a streaming replication sync standby, but also
> > to another BDR node. The logical decoding facility added in 9.4 allows
> > logical replication solutions to use the same mechanism as streaming rep
> > does.
> >
>
> Sounds interesting, but it does not sound like it’s being bi-directional in that case?

It is bidirectional if you configure a bdr node in
synchronous_standby_names.

Note that streaming replication's synchronous mode probably doesn't give
the guarantees you're thinking it does:
a) A sent commit might succeed locally on the primary, but the system
might fail to send it to the synchronous standby. I.e. postgres'
synchronous replication of normal commits is *not* 2-safe.
b) Even if a transaction is replicated to the standby it's *not*
guaranteed to be applied. All that's guaranteed is that it has been
shipped to the synchronous standby.

> Ideally I’m looking for a solution where I can run an application and it does not really matter on what node a transaction executes, or if it changes data or not.

I'd like that too, but I don't think that's going to happen. There's
just too many caveats (CAP theorem et al) to make that generally
useful/applicable.
I think we (as in postgres) will probably get the ability to run
individual transactions in such a mode, but you surely wouldn't want to
run every transaction in it.

Greetings,

Andres Freund

--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Martin Gudmundsson 2014-07-12 13:32:55 Re: Bi-Directional replication client awareness
Previous Message Michael Paquier 2014-07-12 12:37:05 Re: Bi-Directional replication client awareness