On Wed, May 15, 2024 at 10:13 AM David Rowley <dgrowle...@gmail.com> wrote: > > On Wed, 15 May 2024 at 13:44, jian he <jian.universal...@gmail.com> wrote: > > "Shared Hit Blocks": 0, > > "Shared Read Blocks": 0, > > "Shared Dirtied Blocks": 0, > > "Shared Written Blocks": 0, > > "Local Hit Blocks": 0, > > "Local Read Blocks": 0, > > "Local Dirtied Blocks": 0, > > "Local Written Blocks": 0, > > "Temp Read Blocks": 0, > > "Temp Written Blocks": 0 > > > > these information duplicated for json key "Serialization" and json key > > "Planning" > > i am not sure this is intended? > > Looks ok to me. Buffers used during planning are independent from the > buffers used when outputting rows to the client. >
looking at serializeAnalyzeReceive. I am not sure which part of serializeAnalyzeReceive will update pgBufferUsage. I am looking for an example where this information under json key "Serialization" is not zero. So far I have tried: create table s(a text); insert into s select repeat('a', 1024) from generate_series(1,1024); explain (format json, analyze, wal, buffers, memory, serialize, timing off) select * from s;