pgsql: Rethink prior patch to filter out dead backend entries from the
В списке pgsql-committers по дате отправления:
| От | tgl@postgresql.org (Tom Lane) |
|---|---|
| Тема | pgsql: Rethink prior patch to filter out dead backend entries from the |
| Дата | |
| Msg-id | 20051216040340.5B68B9DCA59@postgresql.org обсуждение исходный текст |
| Список | 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)
В списке pgsql-committers по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера