Re: Fix bug in multixact Oldest*MXactId initialization and access - Mailing list pgsql-hackers

From Yura Sokolov
Subject Re: Fix bug in multixact Oldest*MXactId initialization and access
Date
Msg-id bf2951b4-687b-4bd3-a072-46deb463f177@postgrespro.ru
Whole thread Raw
In response to Re: Fix bug in multixact Oldest*MXactId initialization and access  (Chao Li <li.evan.chao@gmail.com>)
Responses Re: Fix bug in multixact Oldest*MXactId initialization and access
Re: Fix bug in multixact Oldest*MXactId initialization and access
List pgsql-hackers
Good day.

Sami Imseih, I've introduced new precalculated variables:

    MaxChildren = MaxBackends + NUM_AUXILIARY_PROCS;
    TotalProcs = MaxChildren + max_prepared_xacts;
    TotalXactProcs = MaxBackends + max_prepared_xacts;

and spread their usage through the sources.
I don't know how committers will accept this change. But they will
certainly make their own version of patch, so I don't bother much.

But I still use inline procs for access to the arrays. Asserts cost nothing
in release build. And new version of functions doesn't branch.

And you're right: looks like there were mistake in previous version so
GetOldestVisibleMXactId became unused. New version has no this mistake.

Chao Li, new access functions doen't branch because I've made separate
functions to store at slots for prepared transactions.

--

regards
Yura Sokolov aka funny-falcon
Attachment

pgsql-hackers by date:

Previous
From: Fujii Masao
Date:
Subject: Re: Shutdown indefinitely stuck due to unflushed FPI_FOR_HINT record
Next
From: Andres Freund
Date:
Subject: Re: pgstat include expansion