On 2021-Mar-18, Stephen Frost wrote:
> * Alvaro Herrera (alvherre@alvh.no-ip.org) wrote:
> > Patch 10 uses the term "WAL-skip relations". What does that mean? Is
> > it "relations that are not WAL-logged"? I suppose we already have a
> > term for this; I'm not sure it's a good idea to invent a different term
> > that is only used in this new place.
>
> This is discussed in src/backend/access/transam/README, specifically the
> section that talks about Skipping WAL for New RelFileNode. Basically,
> it's the 'wal_level=minimal' optimization which allows WAL to be
> skipped.
Hmm ... that talks about WAL-skipping *changes*, not WAL-skipping
*relations*. I thought WAL-skipping meant unlogged relations, but
I understand now that that's unrelated. In the transam/README, WAL-skip
means a change in a transaction in a relfilenode that, if rolled back,
would disappear; and I'm not sure I understand how the code is handling
the case that a relation is under that condition.
This caught my attention because a comment says "encryption does not
support WAL-skipped relations", but there's no direct change to the
definition of RelFileNodeSkippingWAL() to account for that. Perhaps I
am just overlooking something, since I'm just skimming anyway.
--
Álvaro Herrera Valdivia, Chile