Re: Optimization of vacuum for logical replication

From: Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru>
To: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
Cc: mailings(at)oopsware(dot)de, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Optimization of vacuum for logical replication
Date: 2019-08-22 07:06:56
Message-ID: 5e8de371-f32e-68f4-9a7c-f6756a6630a0@postgrespro.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 22.08.2019 6:13, Kyotaro Horiguchi wrote:
> Hello.
>
> At Wed, 21 Aug 2019 18:06:52 +0300, Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> wrote in <968fc591-51d3-fd74-8a55-40aa770baa3a(at)postgrespro(dot)ru>
>> Ok, you convinced me that there are cases when people want to combine
>> logical replication with streaming replication without slot.
>> But is it acceptable to have GUC variable (disabled by default) which
>> allows to use this optimizations?
> The odds are quite high. Couldn't we introduce a new wal_level
> value instead?
>
> wal_level = logical_only
>
>
> I think this thread shows that logical replication no longer is a
> superset(?) of physical replication. I thougt that we might be
> able to change wal_level from scalar to bitmap but it breaks
> backward compatibility..
>
> regards.
>
I think that introducing new wal_level is good idea.
There are a lot of other places (except vacuum) where we insert in the
log information which is not needed for logical decoding.
Instead of changing all places in code where this information is
inserted, we can filter it at xlog level (xlog.c).
My only concern is how much incompatibilities will be caused by
introducing new wal level.

--
Konstantin Knizhnik
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Surafel Temesgen 2019-08-22 07:40:30 Re: FETCH FIRST clause PERCENT option
Previous Message Konstantin Knizhnik 2019-08-22 07:00:18 Re: Why overhead of SPI is so large?