Re: BUG #14830: Missed NOTIFications, PostgreSQL 9.1.24

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: Marko Tiikkaja <marko(at)joh(dot)to>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, PostgreSQL mailing lists <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #14830: Missed NOTIFications, PostgreSQL 9.1.24
Date: 2017-10-10 21:25:24
Message-ID: 29602.1507670724@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

I wrote:
> Concretely, I suggest the attached patch. I tried Marko's testbed
> against this, and it seems indeed a bit faster than before ---
> running it for 100000 notifies takes about 19.25 seconds, rather than
> 19.5 seconds with HEAD. But the testbed is probably about the best
> case because it has a bunch of threads sending notifies to one
> receiver, so that the receiver is quite likely to have multiple
> messages to read at a time. OTOH, in a situation where the NOTIFY
> traffic isn't so high, it probably hardly matters anyway.

It occurred to me that it's easy to measure the worst case, ie always
one message per notify interrupt:

$ cat bnch.txt
LISTEN foo\; NOTIFY foo;
$ pgbench -n -c 1 -T 10 -f bnch.txt

On this case it seems that the patch is circa 2% slower than HEAD,
though that's only barely above the noise level in my measurements.
I think that's probably acceptable.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message marko 2017-10-11 02:00:58 BUG #14849: jsonb_build_object doesn't like VARIADIC calls very much
Previous Message Petr Jelinek 2017-10-10 19:54:48 Re: 10.0: Logical replication doesn't execute BEFORE UPDATE OF <columns> trigger