Re: pg_cron for vacuum - dynamic table set - Mailing list pgsql-general

From David G. Johnston
Subject Re: pg_cron for vacuum - dynamic table set
Date
Msg-id CAKFQuwact+u_Er3pBVYPUO7Vg0aV7tuhLOQErpzO8kwXvs83Yw@mail.gmail.com
Whole thread Raw
In response to pg_cron for vacuum - dynamic table set  (saket bansal <saket.tcs@gmail.com>)
Responses Re: pg_cron for vacuum - dynamic table set
List pgsql-general
On Thu, Feb 3, 2022 at 2:29 PM saket bansal <saket.tcs@gmail.com> wrote:
Hi, I am trying to schedule pg_cron to generate a set of commands and then run them. E.g select 'vacuum freeze '||table_name from inventory_for_vacuum \gexec . This works well at command line, but when scheduled in pg_cron, it fails with syntax error ERROR: syntax error at or near "\" .

Right, because you don't get to use psql meta-commands if you are not using psql.

Since vacuum doesn't work inside a transaction block ERROR: VACUUM cannot run inside a transaction block, I cannot use a function directly to run over a loop.
Any guidance to make it work or an alternative?

Have a pg_cron job that dynamically creates other pg_cron jobs that only run once?

David J.

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: pg_cron for vacuum - dynamic table set
Next
From: Thomas Munro
Date:
Subject: Re: sort order for UTF-8 char column with Japanese UTF-8