From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
Cc: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, 德哥 <digoal(at)126(dot)com>, Pg Bugs <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: BUG #13443: master will remove dead rows when hot standby(use slot) disconnect |
Date: | 2015-06-16 19:21:41 |
Message-ID: | 20150616192141.GD2626@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On 2015-06-16 10:00:13 -0700, Jeff Janes wrote:
> On Mon, Jun 15, 2015 at 5:52 PM, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
> wrote:
> I haven't looked at the code, or paid much attention when the feature went
> in. From the docs, I thought that is what would happen as well. But
> experimentally, that only happens if hot_standby_feedback is on. I get the
> same behavior
> on 9.4.4 and on 9.5devel.
>
> postgresql.conf:
>
> wal_level = logical
> max_wal_senders = 3
> max_replication_slots = 3
> hot_standby = on
> hot_standby_feedback = off ## toggled on standby over course of
> experiment
> port=5433 ### on standby only. default on master
>
> on master:
> SELECT * FROM pg_create_physical_replication_slot('node_a_slot');
>
> recovery.conf:
> standby_mode = 'on'
> primary_conninfo = 'port=5432 user=jjanes'
> primary_slot_name = 'node_a_slot'
>
> I repeat Digoal's example, only don't crash the standby.
>
> I leave the stand-by connected, with a client sitting in a repeatable read
> transaction, and then delete the tuples on the master side. Vacuum will
> quickly reclaim the tuples, and then after 30s the stand-by session gets
> disconnect due to conflict. When I toggle hot_standby_feedback on, then it
> behaves as expected, with the master never cleaning up the deleted tuples.
It's expected that we only hold up the xmin horizon on the primary via
slots if hot_standby_feedback is enabled. It seemed - and still seems -
like a bad idea to force hs_feedback to on if slots are used, using it
is much more expensive than just retaining WAL. Do you disagree?
Where do the docs imply the contrary?
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | Jeff Janes | 2015-06-16 19:58:18 | Re: BUG #13443: master will remove dead rows when hot standby(use slot) disconnect |
Previous Message | Christoph Berg | 2015-06-16 18:35:56 | Re: [GENERAL] pg_xlog on a hot_standby slave filling up |