Re: Why is a newly created index contains the invalid LSN? - Mailing list pgsql-hackers

From Amit Kapila
Subject Re: Why is a newly created index contains the invalid LSN?
Date
Msg-id CAA4eK1J5hgayxL-pquthsXGubx3EmRFTSyMwhxOieZhfPzpC=w@mail.gmail.com
Whole thread Raw
In response to Why is a newly created index contains the invalidLSN?  (Yury Zhuravlev <u.zhuravlev@postgrespro.ru>)
Responses Re: Why is a newly created index contains the invalidLSN?  (Yury Zhuravlev <u.zhuravlev@postgrespro.ru>)
List pgsql-hackers
On Thu, Aug 25, 2016 at 7:55 PM, Yury Zhuravlev
<u.zhuravlev@postgrespro.ru> wrote:
> Hello hackers.
>
> I have a small question. While working on an incremental backup I noticed a
> strange thing.
> Newly created index is contains the invalid LSN (0/0).
> Exmaple:
> postgres=# select lsn from page_header(get_raw_page('test_a_idx2',0));
> lsn -----
> 0/0
> (1 row)
>
> Can you explain me why?
>

For some of the indexes like btree which are built outside shared
buffers, we don't write WAL unless wal_level >= REPLICA.  I think
Robert has explained it very well how we handle the crash recovery
situation for such indexes.  However, for some other indexes which
don't bypass shared buffers like BRIN, GIN we do write WAL for such
cases as well, so you must see LSN for those type of indexes.  I am
less sure, if there will be any problem, if don't write WAL for those
indexes as well when wal_level < REPLICA.

-- 
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Renaming of pg_xlog and pg_clog
Next
From: "Tsunakawa, Takayuki"
Date:
Subject: Re: [bug fix] Cascading standby cannot catch up and get stuck emitting the same message repeatedly