From: Tim Landscheidt <tim@tim-landscheidt.de>
To: pgsql-sql@postgresql.org
Subject: Re: mail alert
Date: Thu, 13 Aug 2009 22:24:07 +0000
Message-ID: <m3bpmjfj3s.fsf@passepartout.tim-landscheidt.de> (raw)
References: <E30C7040DE22624185BAD4093190B54437BE5DB49C@EX2007-MBX-2.uz.kuleuven.ac.be>
<EC8A0653E149420D898593D05B1E07FF@ramasubramanian>
<E30C7040DE22624185BAD4093190B54437BE5DB4A9@EX2007-MBX-2.uz.kuleuven.ac.be>
<h6106l$h8t$2@reversiblemaps.ath.cx>
<20090813215420.GU5909@alvh.no-ip.org>
Alvaro Herrera <alvherre@commandprompt.com> wrote:
>> > It's on Windows
>> I'd go with notify and a listener written in C using c-client to send
>> emails, but only because I've used those before.
> I wouldn't write it in C but rather Perl or Python, but whatever suits
> your fancy should work (Visual Basic anyone?). The advantages to using
> a listener program instead of doing it in a trigger or something like
> that are:
> - transaction semantics are kept; you don't send an email only to find
> out your transaction has been rolled back for whatever reason, and then
> send a second email when the transaction is replayed
> - you don't block the database system just because your mail server is
> down
> - the email can be sent on whatever schedule fits the listener program
> - the listener client can run elsewhere, not only in the database server
> - any further external processing can take place at that time, without
> bothering the database server
> - other stuff I don't recall ATM
The main disadvantage in using a listener is that it is your
responsibility to make sure that the listener is listening
24/7 - from before the database accepts other connections,
through network failures, bugs, etc. - otherwise notifica-
tions will be lost. Therefore I find it much more reliable
(and easier to program) to copy the relevant data to a table
"mailqueue" (or whatever) and then process that queue every
other minute.
Tim
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: tim@tim-landscheidt.de
Subject: Re: mail alert
In-Reply-To: <m3bpmjfj3s.fsf@passepartout.tim-landscheidt.de>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox