Peter Eisentraut <peter_e@gmx.net> writes:
> On lör, 2010-04-03 at 11:13 -0400, Tom Lane wrote:
>> This one is probably my responsibility (the others all look like Simon's
>> code). What do you not like about it, exactly? Perhaps it should be
>> "NOTIFY queue is x% full"?
> Yeah, that plus some hints maybe. "pg_notify" had me confused
> initially, since it looks like a system catalog table name.
OK, I did this:
Index: async.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/commands/async.c,v
retrieving revision 1.155
diff -c -r1.155 async.c
*** async.c 26 Feb 2010 02:00:37 -0000 1.155
--- async.c 5 Apr 2010 00:38:03 -0000
***************
*** 1421,1432 **** } ereport(WARNING,
! (errmsg("pg_notify queue is %.0f%% full", fillDegree * 100), (minPid != InvalidPid
?
! errdetail("PID %d is among the slowest backends.", minPid) : 0),
(minPid!= InvalidPid ?
! errhint("Cleanup can only proceed if this backend ends its current transaction.")
:0))); asyncQueueControl->lastQueueFillWarn = t;
--- 1421,1432 ---- } ereport(WARNING,
! (errmsg("NOTIFY queue is %.0f%% full", fillDegree * 100), (minPid != InvalidPid ?
! errdetail("The server process with PID %d is among those with the oldest transactions.", minPid)
: 0), (minPid != InvalidPid ?
! errhint("The NOTIFY queue cannot be emptied until that process ends its current transaction.")
: 0))); asyncQueueControl->lastQueueFillWarn = t;
regards, tom lane