On Sat, 2025-05-17 at 08:50 -0600, Scott Ribe wrote:
> > On May 16, 2025, at 1:37 PM, Laurenz Albe <laurenz.albe@cybertec.at> wrote:
> >
> > Sometimes, a backend writes a block to disk itself. This might happen if a lot
> > of cache pressure, but usually it happens when the table is extended with new
> > blocks.
>
> Ah, that's the piece I was missing!
>
> Do the written blocks get counted as dirty first, or only as written?
They will certainly be dirty as well. You can use simple experiments to answer
questions like this:
CREATE TABLE new(id integer);
EXPLAIN (ANALYZE, BUFFERS, COSTS OFF, SUMMARY OFF) INSERT INTO new VALUES (42);
QUERY PLAN
════════════════════════════════════════════════════════════
Insert on new (actual time=0.165..0.166 rows=0.00 loops=1)
Buffers: shared dirtied=1 written=1
-> Result (actual time=0.002..0.003 rows=1.00 loops=1)
Yours,
Laurenz Albe