When using explain (analyze, buffers) things like this can show up:
Buffers: shared hit=137 read=6545 dirtied=46
Given the description in the manual:
The number of blocks dirtied indicates the number of previously unmodified blocks that were changed by this query
I am a bit surprised why a SELECT (read-only) query would cause buffers to be dirtied?
Under which situation does a SELECT query change a block?
Regards
Thomas