[DOCS] pg_total_relation_size() and CHECKPOINT

2008-03-13 Thread Zubkovsky, Sergey
Hello,

 

I've detected that a result value of pg_total_relation_size() for an
actively updated table might be significantly differ from a result that
is returned after explicit CHECKPOINT command execution.

 

select version(); 

"PostgreSQL 8.2.6 on i686-pc-mingw32, compiled by GCC gcc.exe (GCC)
3.4.2 (mingw-special)"

 

I understand the reasons of such behavior: cache buffers must be flushed
in order to be sure that pg_total_relation_size() result will be like we
expect.

Is this right?

If so I think it would be very useful to add a description of this
peculiarity to the PG documentation.

 

 

Thanks in advance,

Zubkovsky Sergey



Re: [DOCS] pg_total_relation_size() and CHECKPOINT

2008-03-13 Thread Tom Lane
"Zubkovsky, Sergey" <[EMAIL PROTECTED]> writes:
> I've detected that a result value of pg_total_relation_size() for an
> actively updated table might be significantly differ from a result that
> is returned after explicit CHECKPOINT command execution.

Uh, can you show a specific example of what you mean?

> I understand the reasons of such behavior: cache buffers must be flushed
> in order to be sure that pg_total_relation_size() result will be like we
> expect.

I wouldn't think so.  The space for a page is allocated immediately when
needed --- its *contents* might not be up to date, but that shouldn't
affect pg_total_relation_size.

regards, tom lane

-- 
Sent via pgsql-docs mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-docs