pgsql: Rethink prior patch to filter out dead backend entries from the

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Rethink prior patch to filter out dead backend entries from the
Date: 2005-12-16 04:03:40
Message-ID: 20051216040340.5B68B9DCA59@postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Rethink prior patch to filter out dead backend entries from the pgstats
file. The original code probed the PGPROC array separately for each PID,
which was not good for large numbers of backends: not only is the runtime
O(N^2) but most of it is spent holding ProcArrayLock. Instead, take the
lock just once and copy the active PIDs into an array, then use qsort
and bsearch so that the lookup time is more like O(N log N).

Modified Files:
--------------
pgsql/src/backend/postmaster:
pgstat.c (r1.112 -> r1.113)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/postmaster/pgstat.c.diff?r1=1.112&r2=1.113)
pgsql/src/backend/storage/ipc:
procarray.c (r1.9 -> r1.10)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/procarray.c.diff?r1=1.9&r2=1.10)
pgsql/src/include/storage:
procarray.h (r1.6 -> r1.7)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/procarray.h.diff?r1=1.6&r2=1.7)

Browse pgsql-committers by date

  From Date Subject
Next Message Neil Conway 2005-12-16 18:44:07 pgsql: Fix some typos in the TODO list.
Previous Message User Cmaj 2005-12-15 13:59:40 pgaccess - pgaccess: Documenting some key bindings in queries.