Re: organizing cron jobs in one function
От | Louis-David Mitterrand |
---|---|
Тема | Re: organizing cron jobs in one function |
Дата | |
Msg-id | 20121119100945.GA23295@apartia.fr обсуждение исходный текст |
Ответ на | Re: organizing cron jobs in one function (Craig Ringer <craig@2ndQuadrant.com>) |
Список | pgsql-sql |
On Mon, Nov 19, 2012 at 08:31:10AM +0800, Craig Ringer wrote: > On 11/19/2012 01:11 AM, Louis-David Mitterrand wrote: > > On Sun, Nov 18, 2012 at 07:27:54PM +0800, Craig Ringer wrote: > >> On 11/18/2012 12:19 AM, Louis-David Mitterrand wrote: > >>> Hi, > >>> > >>> I'm planning to centralize all db maintenance jobs from a single > >>> pl/pgsql function called by cron every 15 minutes (highest frequency > >>> required by a list of jobs). > >> It sounds like you're effectively duplicating PgAgent. > >> > >> Why not use PgAgent instead? > > Sure, I didn't know about PgAgent. > > > > Is it still a good solution if I'm not running PgAdmin and have no plan > > doing so? > > > It looks like it'll work. The main issue is that if your jobs run > over-time, you don't really have any way to cope with that. Consider > using SELECT ... FOR UPDATE, or just doing an UPDATE ... RETURNING > instead of the SELECT. > > I'd also use one procedure per job in separate transactions. That way if > your 4-hourly job runs overtime, it doesn't block your 5-minutely one. > > Then again, I'd also just use PgAgent. In my last question I was asking about the ability to run PgAgent _without_ PgAdmin. Is that possible? From the docs it seems PgAgent requires a GUI to configure jobs, and I'd rather avoid that if possbile. Otherwise thanks for the advice, especially the 'overtime' issue (which when a new job starts when the old one is not over yet, right?)
В списке pgsql-sql по дате отправления: