Re: BUG #13830: pg_table_size and pg_indexes_size

From: huang <foggyglass(at)163(dot)com>
To: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
Cc: "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #13830: pg_table_size and pg_indexes_size
Date: 2015-12-24 13:32:09
Message-ID: 567BF3D9.5070604@163.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Mr. David ,
thank you for your explanation .

T.T
在 2015/12/24 2:18, David G. Johnston 写道:
> On Wed, Dec 23, 2015 at 7:55 AM, <foggyglass(at)163(dot)com
> <mailto:foggyglass(at)163(dot)com>>wrote:
>
> The following bug has been logged on the website:
>
> Bug reference: 13830
> Logged by: T_T
> Email address: foggyglass(at)163(dot)com <mailto:foggyglass(at)163(dot)com>
> PostgreSQL version: 9.5rc1
> Operating system: centos7
> Description:
>
> Hi friend,
> I think there is a error about pg_table_size and
> pg_indexes_size in
> PostgreSQL .
> This is my operation log
>
> [postgres(at)c7 bin]$./psql
> psql (9.5beta2)
> Type "help" for help.
>
> postgres=# create table b(id int);
> CREATE TABLE
> postgres=# create index b_idx on b(id);
> CREATE INDEX
> postgres=# select relname , pg_table_size(oid),pg_indexes_size(oid)
> postgres-# from pg_class where relname in ('b','b_idx');
> relname | pg_table_size | pg_indexes_size
> ---------+---------------+-----------------
> b | 0 | 8192
> b_idx | 8192 | 0
> (2 rows)
>
> postgres=#
>
> The b_idex is a index , but pg_indexes_size does not show its size
> . The b
> is a table , but pg_table_size does not show its size .I think the
> pg_table_size show the b size , but not pg_indexes_size .
>
>
> ​Working as documented.​
>
> Table "b" has no size of its own - however its one index has a size of
> 8192.
>
> An index is sometimes considered a "table", in this case when using
> pg_table_size​, and so
> ​ you get 8192 as the size of the index table (i.e., relation). Since
> an index doesn't have an index of its own pg_indexes_size returns 0.
>
> pg_table_size on "b" returns zero since its size is zero and the
> calculation excludes indexes. pg_indexes_size on "b" returns the size
> of "b_idx" which is 8192.
>
> http://www.postgresql.org/docs/9.5/interactive/functions-admin.html
>
> ​ David J.​
> ​
>

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message huang 2015-12-24 13:34:41 Re: BUG #13830: pg_table_size and pg_indexes_size
Previous Message tdhutt 2015-12-24 10:44:28 BUG #13832: Syntax errors are extremely unfriendly