Re: How to run a task continuously in the background - Mailing list pgsql-general

From Weatherby,Gerard
Subject Re: How to run a task continuously in the background
Date
Msg-id 1563278313157.67005@uchc.edu
Whole thread Raw
In response to Re: How to run a task continuously in the background  (Dirk Mika <Dirk.Mika@mikatiming.de>)
Responses Re: How to run a task continuously in the background
List pgsql-general

We used a trigger that called pg_notify (https://www.postgresql.org/docs/9.5/sql-notify.html​) and then had another

process that LISTENed for notifications.


-- 
Gerard Weatherby| Application Architect
NMRbox | Department of Molecular Biology and Biophysics | UConn Health
263 Farmington Avenue, Farmington, CT 06030-6406
Phone: 860 679 8484
uchc.edu 

From: Dirk Mika <Dirk.Mika@mikatiming.de>
Sent: Tuesday, July 16, 2019 1:32 AM
To: pgsql-general@lists.postgresql.org
Subject: Re: How to run a task continuously in the background
 

Creating a background worker that invokes a stored procedure once per

But this is not so simple to put in place.

 

It's not really important that the job runs once a second, but that it starts immediately when I want it to.

If I start a job with pg_cron, it will not be executed until the next full minute at the earliest.

 

Otherwise pg_cron with a function that performs a pg_sleep of one

second in a loop.

 

Anyway, it seems to me you are better refactoring your solution: it

seems you need to process data when _new data_ comes, not once per

second, so it sounds to me like a trigger could solve the problem.

 

The processing of the data via a job is deliberately chosen so as to separate the insertion of the data from their processing.

If a trigger were to do this, the transaction in which the data is inserted would take longer. This is not intended.

It is common for many records to be inserted in a short time, but processing takes a little time. The application that inserts the data should however not be slowed down.

 

Dirk

--
Dirk Mika
Software Developer



mika:timing GmbH
Strundepark - Kürtener Str. 11b
51465 Bergisch Gladbach
Germany

fon +49 2202 2401-1197
dirk.mika@mikatiming.de
www.mikatiming.de

AG Köln HRB 47509 * WEEE-Reg.-Nr. DE 90029884
Geschäftsführer: Harald Mika, Jörg Mika


 

Attachment

pgsql-general by date:

Previous
From: Emanuel Araújo
Date:
Subject: Re: disable and enable trigger all when a foreign keys
Next
From: Ivan Voras
Date:
Subject: Why no CREATE TEMP MATERIALIZED VIEW ?