Re: pgsql: Improve LWLock scalability.

Поиск
Список
Период
Сортировка
Искать
От
Andres Freund
Тема
Re: pgsql: Improve LWLock scalability.
Дата
Msg-id
20141225185354.GH31801@alap3.anarazel.de
Ответ на
Список
Дерево обсуждения
pgsql: Improve LWLock scalability. Andres Freund <andres@anarazel.de>
Re: pgsql: Improve LWLock scalability. Andres Freund <andres@anarazel.de>
Re: pgsql: Improve LWLock scalability. Tom Lane <tgl@sss.pgh.pa.us>
Re: pgsql: Improve LWLock scalability. Andres Freund <andres@anarazel.de>
Re: pgsql: Improve LWLock scalability. Robert Haas <robertmhaas@gmail.com>
> Improve LWLock scalability.

> src/backend/storage/lmgr/lwlock.c |  931 +++++++++++++++++++++++++------------
> src/include/storage/lwlock.h      |   24 +-
> 2 files changed, 653 insertions(+), 302 deletions(-)

This broke dtrace probes in a trivial way. Looking at the log made me
notice though that the probes in lwlock.c generate warnings since the
tranche changes went in. Check
http://pgbuildfarm.org/cgi-bin/show_stage_log.pl?nm=locust&dt=2014-12-25%2014%3A30%3A40&stg=make

lwlock.c: In function 'LWLockAcquireCommon':
lwlock.c:650: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__wait__start$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:661: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__wait__done$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:677: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__acquire$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c: In function 'LWLockConditionalAcquire':
lwlock.c:750: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__condacquire__fail$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:757: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__condacquire$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c: In function 'LWLockAcquireOrWait':
lwlock.c:864: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__wait__start$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:875: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__wait__done$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:897: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__acquire__or__wait__fail$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:904: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__acquire__or__wait$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c: In function 'LWLockWaitForVar':
lwlock.c:1037: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__wait__start$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:1049: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__wait__done$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c:1060: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__acquire$v1$63686172202a$696e74$696e74' discards qualifiers from pointer target type
lwlock.c: In function 'LWLockRelease':
lwlock.c:1247: warning: passing argument 1 of '__dtrace_probe$postgresql$lwlock__release$v1$63686172202a$696e74' discards qualifiers from pointer target type

That's because LWLockTranche->name is const. As I've never used the
dtrace probes and apparently no other developer does either I'm
regarding the value of the const higher than those of not generating
warnings in dtrace builds. Anyone sees that differently?

Personally I think at this point we could just rip the probe support
out, but I'm not going to fight for that in earnest.

Greetings,

Andres Freund

-- 
 Andres Freund	                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

В списке pgsql-committers по дате отправления
От: Andres Freund
Дата:
От: Tom Lane
Дата:
FAQ