Re: PostgreSQL questions

From: Greg Stark <gsstark(at)mit(dot)edu>
To: Gurjeet Singh <singh(dot)gurjeet(at)gmail(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Carel Combrink <s25291930(at)tuks(dot)co(dot)za>, pgsql-novice(at)postgresql(dot)org
Subject: Re: PostgreSQL questions
Date: 2010-03-22 15:56:29
Message-ID: 407d949e1003220856i3a44b246i745adff1a4c028eb@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

On Thu, Mar 18, 2010 at 5:55 AM, Gurjeet Singh <singh(dot)gurjeet(at)gmail(dot)com> wrote:
> Slide 9 says:
>
> Events can be lost!
> – If the same event occurs between two calls on
> collection by a backend, it will only see one of them
> – Because pg_listener has one row per (event,
> listener) pair.
>
> And I think these limitations are being remedied by the new implementation
> in 9.0.

Anything that describes notifications as "events" is on the wrong
track. This isn't a queueing system, it's a facility is analogous to
unix signals or hardware interrupts -- notifications are condition
variables. If your cache is invalidated twice you only need to know
that it was invalidated, not how many times.

Queueing systems are hard, you have to deal with large volumes of
short-lived data and deal with things like priorities and so on.
Interrupt mechanisms are easy, they're just a small set of flags that
need to be flipped and checked at the right time.

--
greg

In response to

Browse pgsql-novice by date

  From Date Subject
Next Message Ryan Garvey 2010-03-22 16:02:12 How do you query all columns and all tables for a specific string
Previous Message A. Kretschmer 2010-03-22 08:07:31 Re: Speed question - new view using preview view components