"Hiroshi Saito" <[EMAIL PROTECTED]> writes:
> postgres=# SELECT pg_size_pretty(pg_tablespace_size(1664));
> ERROR:  permission denied for tablespace pg_global

This is an intentional change, documented in the release notes:

* Put some security restrictions on the dbsize functions (Tom)

  Restrict pg_database_size() to users who can connect to the target
  database (note that CONNECT privilege is granted by default, so this
  does not change the default behavior). Restrict pg_tablespace_size()
  to users who have CREATE privilege on the tablespace (which is not
  granted by default), except when the tablespace is the default
  tablespace for the current database (since we treat that as implicitly
  allowing use of the tablespace).

There was a long thread about this in -hackers two months ago:
http://archives.postgresql.org/pgsql-hackers/2007-08/msg00948.php

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to