> -----Original Message-----
> From: Andreas Pflug [mailto:pgadmin@pse-consulting.de]
> Sent: 02 March 2005 22:22
> To: Dave Page
> Cc: pgadmin-hackers@postgresql.org
> Subject: Re: [pgadmin-hackers] RFC: pgAgent Scheduler Design
>
> > Monthly - This schedule will execute repeatedly at the time
> specified in
> > RunTime, on or after the date specified in StartTime. A
> bool[12] value
> > (Months) will specify which months to run in. A bool[31] value
> > (MonthDays) will specify which days of the month to run on.
> Jobs set to
> > run on non-existant days (such as 31/02) will be skipped.
>
> Better is a bool[32], where the 32nd day is the last day of the month.
OK.
> Silently skipping is not good, should at least be logged.
Hmm - not sure how that will fit in with my thinking of how it will
work, but I'll bear it in mind.
> Hm, negative schedule...
> I doubt the user will understand this.
Yes, ths part is my main uncertainty - though mainly because it will
complicate the code significantly!
> Exceptions are probably only needed for days, e.g. "I want to
> do backups
> every weekday, but on Jan 1st nobody will change the tape so I don't
> want to have it run then."
>
> So I'd propose an additional exception table:
>
> CREATE TABLE pgagent.pga_exception
> (
> jexscid int4 NOT NULL,
> jexdate date NOT NULL,
> jexdorun bool, -- run in addition to schedule if true
Run in addition is easy anyway - a new schedule may be added to the
existing job.
How about adding a simple date[] column to the schedule in which the
user can add arbitrary 'don't run' dates?
Regards, Dave.