NOTIFY performance

From: Artur Zając <azajac(at)ang(dot)com(dot)pl>
To: <pgsql-performance(at)postgresql(dot)org>
Subject: NOTIFY performance
Date: 2012-08-24 18:46:42
Message-ID: 002401cd8228$ce80e970$6b82bc50$@ang.com.pl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Hello,

I would like to create some application using triggers and LISTEN/NOTIFY
framework. I've tested it, and I noticed that performance of NOTIFY
significally decreases with increasing number of distinct NOTIFIES in
transaction.
I found that function AsyncExistsPendingNotify is responsibe for it. I think
that complexivity of searching duplicates there is O(N^2). Would be possible
to improve performance of it? Maybe by using list for elements precedence
and binary search tree for searching duplicates - with complexivity of
O(Nlog2(N)).

I'v tested with 50000 of NOTICES. Updating table with 20000 NOTICES when
searching is not performed took 1,5 second. With searching it took 28
seconds.

-------------------------------------------
Artur Zajac

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Merlin Moncure 2012-08-24 19:12:05 Re: NOTIFY performance
Previous Message Shaun Thomas 2012-08-24 16:20:21 Loose Index Scans by Planner?