Re: BUG #14206: Switch to using POSIX semaphores on FreeBSD

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #14206: Switch to using POSIX semaphores on FreeBSD
Дата
Msg-id 16860.1466539165@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BUG #14206: Switch to using POSIX semaphores on FreeBSD  (sobomax@freebsd.org)
Ответы Re: BUG #14206: Switch to using POSIX semaphores on FreeBSD  (Maxim Sobolev <sobomax@freebsd.org>)
Список pgsql-bugs
sobomax@freebsd.org writes:
> However, according to the analysis done by Konstantin Belousov here
> https://www.kib.kiev.ua/kib/pgsql_perf_v2.0.pdf there is at the very least
> some performance benefit on using POSIX semaphones instead of SYSV
> semaphones in the PG running on FreeBSD host.

I wonder how thorough that performance testing was.  The reason that the
named-POSIX-semaphore code exists is that it used to be the only kind of
semaphore available on ancient OS X versions.  But we got rid of that as
soon as we could, for the reason explained in template/darwin:

# Select appropriate semaphore support.  Darwin 6.0 (Mac OS X 10.2) and up
# support System V semaphores; before that we have to use POSIX semaphores,
# which are less good for our purposes because they eat a file descriptor
# per backend per max_connection slot.

The extra FDs slow down launching of new backends (due to having to dup
all the postmaster's FDs for the semaphores) and if max_connections is
large they can take a pretty serious chunk out of your system-wide file
table, at worst max_connections squared.

Now maybe FreeBSD is different enough from OSX that these are not problems
for you, but I'm dubious.

Have you got unnamed POSIX semaphores, and if so have you tried that
variant?

            regards, tom lane

В списке pgsql-bugs по дате отправления:

Предыдущее
От: sobomax@freebsd.org
Дата:
Сообщение: BUG #14206: Switch to using POSIX semaphores on FreeBSD
Следующее
От: Maxim Sobolev
Дата:
Сообщение: Re: BUG #14206: Switch to using POSIX semaphores on FreeBSD