Re: explain format json, unit for serialize and memory are different.
jian he <jian.universality@gmail.com>
From: jian he <jian.universality@gmail.com>
To: David Rowley <dgrowleyml@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Michael Paquier <michael@paquier.xyz>, Daniel Gustafsson <daniel@yesql.se>,
PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2024-05-15T03:40:11Z
Lists: pgsql-hackers
On Wed, May 15, 2024 at 10:13 AM David Rowley <dgrowleyml@gmail.com> wrote:
>
> On Wed, 15 May 2024 at 13:44, jian he <jian.universality@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;
Commits
-
Fix some inconsistencies in EXPLAIN output
- 0de37b51065b 17.0 landed