Re: shared-memory based stats collector

From: Arthur Zakirov <a(dot)zakirov(at)postgrespro(dot)ru>
To: Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>, alvherre(at)2ndquadrant(dot)com
Cc: andres(at)anarazel(dot)de, tomas(dot)vondra(at)2ndquadrant(dot)com, ah(at)cybertec(dot)at, magnus(at)hagander(dot)net, robertmhaas(at)gmail(dot)com, tgl(at)sss(dot)pgh(dot)pa(dot)us, pgsql-hackers(at)postgresql(dot)org
Subject: Re: shared-memory based stats collector
Date: 2019-02-21 14:30:50
Message-ID: db346d14-4130-57a5-5f46-9a57e9982bec@postgrespro.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello,

On 21.02.2019 10:05, Kyotaro HORIGUCHI wrote:
> Done. This verison 16 looks as if the moving and splitting were
> not happen. Major changes are:
>
> - Restored old pgstats_* names. This largily shrinks the patch
> size to less than a half lines of v15. More than that, it
> gets easier to examine differences. (checkpointer.c and
> bgwriter.c have a bit stale comments but it is an issue for
> later.)
>
> - Removed "oneshot" feature at all. This simplifies pgstat API
> and let this patch far less simple.
>
> - Moved StatsLock to LWTRANCHE_STATS, which is not necessary to
> be in the main tranche.
>
> - Fixed several bugs revealed by the shrinked size of the patch.

I run regression tests. Unfortunately tests didn't pass, failed test is
'rangetypes':

rangetypes ... FAILED (test process exited with exit code 2)

It seems to me that an autovacuum process terminates because of segfault.

Segfault occurs within get_pgstat_tabentry_relid(). If I'm not mistaken,
somehow 'dbentry' hasn't valid pointer anymore.

'dbentry' is get in the line in do_autovacuum():

dbentry = pgstat_fetch_stat_dbentry(MyDatabaseId);

'dbentry' becomes invalid after calling pgstat_vacuum_stat().

--
Arthur Zakirov
Postgres Professional: http://www.postgrespro.com
Russian Postgres Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2019-02-21 14:37:46 Re: WIP: Avoid creation of the free space map for small tables
Previous Message Fabien COELHO 2019-02-21 14:27:21 Re: libpq host/hostaddr/conninfo inconsistencies