scheduling stored procedure

Started by Alain Rogerabout 18 years ago4 messagesgeneral
Jump to latest
#1Alain Roger
raf.news@gmail.com

Hi,

I have a temporary table in which i store all emails of users who want to
receive a newsletter.
to avoid spamming and to limit the size of this table, i would like to
delete all requests (records) which are older than 72 hours.

i was thinking to execute each hour a stored procedure which will check the
time and date (of now) if it is greater than "registration request time"
stored in this temporary table.
if it is greater, so record will be deleted.

does postgresql have such timer (something like "cron" under unix/linux) ?

thanks a lot,

--
Alain
------------------------------------
Windows XP SP2
PostgreSQL 8.2.4 / MS SQL server 2005
Apache 2.2.4
PHP 5.2.4
C# 2005-2008

In reply to: Alain Roger (#1)
Re: scheduling stored procedure

On 23/03/2008 16:08, Alain Roger wrote:

i was thinking to execute each hour a stored procedure which will check
the time and date (of now) if it is greater than "registration request
time" stored in this temporary table.
if it is greater, so record will be deleted.

does postgresql have such timer (something like "cron" under unix/linux) ?

Not built in. There's pgAgent which comes with pgAdmin, which ought to
do what you want, though I haven't used it myself. Alternatively, you
can use cron to call psql with the -c option to execute the command you
need run.

Ray.

---------------------------------------------------------------
Raymond O'Donnell, Director of Music, Galway Cathedral, Ireland
rod@iol.ie
---------------------------------------------------------------

#3Ben
bench@silentmedia.com
In reply to: Alain Roger (#1)
Re: scheduling stored procedure

Traditionally, postgres lets other tools do things they're good at.....
like scheduling scripts to run every hour. :) I seem to recall there was a
postgres-specific scheduler project somebody started, but I cannot seem to
recall what it was called, much less how far along the project was.

On Sun, 23 Mar 2008, Alain Roger wrote:

Show quoted text

Hi,

I have a temporary table in which i store all emails of users who want to
receive a newsletter.
to avoid spamming and to limit the size of this table, i would like to
delete all requests (records) which are older than 72 hours.

i was thinking to execute each hour a stored procedure which will check the
time and date (of now) if it is greater than "registration request time"
stored in this temporary table.
if it is greater, so record will be deleted.

does postgresql have such timer (something like "cron" under unix/linux) ?

thanks a lot,

--
Alain
------------------------------------
Windows XP SP2
PostgreSQL 8.2.4 / MS SQL server 2005
Apache 2.2.4
PHP 5.2.4
C# 2005-2008

#4Pavel Stehule
pavel.stehule@gmail.com
In reply to: Alain Roger (#1)
Re: scheduling stored procedure

On 23/03/2008, Alain Roger <raf.news@gmail.com> wrote:

Hi,

I have a temporary table in which i store all emails of users who want to
receive a newsletter.
to avoid spamming and to limit the size of this table, i would like to
delete all requests (records) which are older than 72 hours.

i was thinking to execute each hour a stored procedure which will check the
time and date (of now) if it is greater than "registration request time"
stored in this temporary table.
if it is greater, so record will be deleted.

does postgresql have such timer (something like "cron" under unix/linux) ?

no, but you can try pgAgent
http://www.pgadmin.org/docs/1.4/pgagent.html

Show quoted text

thanks a lot,

--
Alain
------------------------------------
Windows XP SP2
PostgreSQL 8.2.4 / MS SQL server 2005
Apache 2.2.4
PHP 5.2.4
C# 2005-2008