I've read this article: https://wiki.postgresql.org/wiki/Hint_Bits
It says:
A plain SELECT, count(*), or VACUUM on the entire table will check
every tuple for visibility and set its hint bits.
Suppose, a new page was created using many INSERTs, and then was written
to disk during a checkpoint. There were no SELECTs or VACUUM on the page
or table yet. Will the following SELECT of one tuple from the page
update hint bits for ALL tuples on the page? Is that correct?
When a page is initially created and then is being written to disk
during a checkpoint, does checkpoint writer update the hint bits before
writing the page, or the following SELECT/VACUUM will have to do that
(possibly loading/updating/writing the page again)?
Regards,
Vitaliy
On 2018-01-29 20:38, Tom Lane wrote:
Vitaliy Garnashevich <vgarnashevich@xxxxxxxxx> writes:
But what is "dirtied" statistics? When a SELECT query could make pages
dirty?
Setting hint bits on recently-committed rows.
regards, tom lane