On Mon, Aug 3, 2020 at 5:05 AM Ashutosh Sharma <ashu.coek88@gmail.com> wrote:
> Could you please explain this point once more in detail? I am not quite able to understand under what circumstances a
bufferwould be modified, but won't be marked as dirty or a WAL won't be written for it.
Whenever this branch is taken:
+ if (nskippedItems == noffs)
+ goto skip_wal;
At this point you have already modified the page, using ItemIdSetDead,
HeapTupleHeaderSet*, and/or directly adjusting htup->infomask. If this
branch is taken, then MarkBufferDirty() and log_newpage_buffer() are
skipped.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company