Re: Patch: show xid and xmin in pg_stat_activity and pg_stat_replication

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: Patch: show xid and xmin in pg_stat_activity and pg_stat_replication
Дата
Msg-id 20140131094023.GA13199@alap3.anarazel.de
обсуждение исходный текст
Ответ на Re: Patch: show xid and xmin in pg_stat_activity and pg_stat_replication  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: Patch: show xid and xmin in pg_stat_activity and pg_stat_replication  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
On 2014-01-30 12:27:43 -0500, Robert Haas wrote:
> Nope, but I think this patch is broken.  It looks to me like it's
> conflating the process offset in the BackendStatus array with its
> backendId, which does not seem like a good idea even if it happens to
> work at present.

Hm. I don't see how that's going to be broken without major surgery in
pgstat.c. The whole thing seems to rely on being able to index
BackendStatusArray with MyBackendId?

> And the way BackendIdGetProc() is used looks unsafe,
> too: the contents might no longer be valid by the time we read them.
> I suspect we should have a new accessor function that takes a backend
> ID and copies the xid and xmin to pointers provided by the client
> while holding the lock.  I also note that the docs seem to need some
> copy-editing:

It certainly needs to be documented as racy, but I don't see a big
problem with being racy here. We assume in lots of places that
writing/reading xids is atomic, and we don't even hold exclusive locks
while writing... (And yes, that means that the xid and xmin don't
necessarily belong to each other)
That said, encapsulating that racy access into a accessor function does
sound like a good plan.

Greetings,

Andres Freund

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



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

Предыдущее
От: Craig Ringer
Дата:
Сообщение: Re: WIP patch (v2) for updatable security barrier views
Следующее
От: Andres Freund
Дата:
Сообщение: Re: Wait free LW_SHARED acquisition - v0.2