From: | "pba(at)mailme(dot)dk" <pba(at)mailme(dot)dk> |
---|---|
To: | "Andres Freund" <andres(at)2ndquadrant(dot)com> |
Cc: | "pba(at)mailme(dot)dk" <pba(at)mailme(dot)dk>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: BDR DML Only |
Date: | 2014-09-16 18:03:21 |
Message-ID: | 58388.90.184.85.6.1410890601.squirrel@90.184.85.6 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
> Hi,
>
> On 2014-09-16 19:32:38 +0200, pba(at)mailme(dot)dk wrote:
>> I am not sure I have a very good case other than the very lousy argument
>> that I would trust it to be stable much more quickly :-)
>
> Well, we'll get the much more quickly if people report problems ;)
>
>> I tried it and it works fine for the simple examples, but obvious once
>> things get a bit more complicated my case falls to pieces.
>>
>> Trying to load the postgis extension then fails. It worked with DDL at
>> least on the first attempt. So we are back to the error recovery.
>
> Hm, that's a bit odd. I think that should actually work. Which version
> did you use?
>
>> As far as I can see it will still "block" DDL operations on the second
>> server even if they are not replicated.
>
> That's a security feature. You can circumvent it, but I'd strongly
> advise against it. It's unproblematic if you have only one node being
> written to, but if you DDL against a table which is written to by
> multiple nodes you can very quickly get into nasty situations. Consider
> a table with one column being written to on three nodes. It gets a
> column added to it. Some nodes will have pending changes with 1 column,
> others with 2. In neither case it's clear how to replicate these.
>
Yes that makes sense.
With DDL disabled then create extension posgis gives a loop on the "slave"
LOG: starting background worker process "bdr
(6059699842869179629,1,16384,): beta: apply"
ERROR: relation "public.spatial_ref_sys" does not exist
LOG: worker process: bdr (6059699842869179629,1,16384,): beta: apply (PID
10482) exited with exit code 1
And then I can't create the extension on the "slave". Per the concept of
BDR this is also reasonable since the postgis extension is a good mix of
DDL and DML.
So DDL disabled with DDL "locks" is probably not the right way to go.
With DDL enabled I did get the Postgis loaded (version 2.1.x compiled with
the BDR setup).
I also managed to run pg_bulkload in buffered writer mode (I wasn't sure
if that was supposed to work).
However in all of my tests I sooner or later end up with a DDL endless
loop error due to a create or replace something in my scripts and
applications => reinstallation. Hence my interest in error recovery :-)
But I will keep on testing because the end result will be very valuable.
So keep up the good work!
Poul
From | Date | Subject | |
---|---|---|---|
Next Message | Tapan Halani | 2014-09-16 18:16:51 | Need guidance to startup |
Previous Message | Michael Paquier | 2014-09-16 18:00:21 | Re: Sequences in foreign tables |