On 03/28/2012 08:24 AM, leaf_yxj wrote:
> I was asked to write a security definer function to make other user can issue
> vacuum and analyze command? Friends in this community said vacuum doesn't
> work inside the function or multi command. How about analyze. I know vacuum
> is something much like oracle shrink which is used to reorganize the space
> in the disk. Analyze is used to collect the statistic info of the table.
> Does analyze works in Function or mulit-commands?
test=> BEGIN ;
BEGIN
test=> ANALYZE ;
WARNING: skipping "pg_authid" --- only superuser can analyze it
WARNING: skipping "pg_database" --- only superuser can analyze it
WARNING: skipping "pg_db_role_setting" --- only superuser can analyze it
WARNING: skipping "pg_tablespace" --- only superuser can analyze it
WARNING: skipping "pg_pltemplate" --- only superuser can analyze it
WARNING: skipping "pg_auth_members" --- only superuser can analyze it
WARNING: skipping "pg_shdepend" --- only superuser can analyze it
WARNING: skipping "pg_shdescription" --- only superuser can analyze it
ANALYZE
test=> COMMIT ;
COMMIT
test=> BEGIN ;
BEGIN
test=> VACUUM ANALYZE ;
ERROR: VACUUM cannot run inside a transaction block
test=>
For details:
http://www.postgresql.org/docs/9.1/interactive/sql-vacuum.htmlhttp://www.postgresql.org/docs/9.1/interactive/sql-analyze.html
>
>
> Thanks.
>
> Regards.
>
>
> Grace
>
> --
> View this message in context:
http://postgresql.1045698.n5.nabble.com/what-s-difference-between-vacuum-analyze-and-analyze-tp5600887p5600887.html
> Sent from the PostgreSQL - general mailing list archive at Nabble.com.
>
--
Adrian Klaver
adrian.klaver@gmail.com