From: | Alexey Kondratov <a(dot)kondratov(at)postgrespro(dot)ru> |
---|---|
To: | Michael Paquier <michael(at)paquier(dot)xyz> |
Cc: | Justin Pryzby <pryzby(at)telsasoft(dot)com>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>, Masahiko Sawada <masahiko(dot)sawada(at)2ndquadrant(dot)com>, Steve Singer <steve(at)ssinger(dot)info>, pgsql-hackers(at)lists(dot)postgresql(dot)org, Robert Haas <robertmhaas(at)gmail(dot)com>, Alexander Korotkov <a(dot)korotkov(at)postgrespro(dot)ru>, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, Jose Luis Tallon <jltallon(at)adv-solutions(dot)net> |
Subject: | Re: Allow CLUSTER, VACUUM FULL and REINDEX to change tablespace on the fly |
Date: | 2020-12-23 16:30:35 |
Message-ID: | 2f88c198e80e7352eb03de44017b929a@postgrespro.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2020-12-23 10:38, Michael Paquier wrote:
> On Tue, Dec 22, 2020 at 03:15:37PM -0600, Justin Pryzby wrote:
>> Now, I really think utility.c ought to pass in a pointer to a local
>> ReindexOptions variable to avoid all the memory context, which is
>> unnecessary
>> and prone to error.
>
> Yeah, it sounds right to me to just bite the bullet and do this
> refactoring, limiting the manipulations of the options as much as
> possible across contexts. So +1 from me to merge 0001 and 0002
> together.
>
> I have adjusted a couple of comments and simplified a bit more the
> code in utility.c. I think that this is commitable, but let's wait
> more than a couple of days for Alvaro and Peter first. This is a
> period of vacations for a lot of people, and there is no point to
> apply something that would need more work at the end. Using hexas for
> the flags with bitmasks is the right conclusion IMO, but we are not
> alone.
>
After eyeballing the patch I can add that we should alter this comment:
int options; /* bitmask of VacuumOption */
as you are going to replace VacuumOption with VACOPT_* defs. So this
should say:
/* bitmask of VACOPT_* */
Also I have found naming to be a bit inconsistent:
* we have ReindexOptions, but VacuumParams
* and ReindexOptions->flags, but VacuumParams->options
And the last one, you have used bits32 for Cluster/ReindexOptions, but
left VacuumParams->options as int. Maybe we should also change it to
bits32 for consistency?
Regards
--
Alexey Kondratov
Postgres Professional https://www.postgrespro.com
Russian Postgres Company
From | Date | Subject | |
---|---|---|---|
Next Message | Gilles Darold | 2020-12-23 16:31:17 | Re: MultiXact\SLRU buffers configuration |
Previous Message | Alexey Kondratov | 2020-12-23 16:12:11 | Re: Allow CLUSTER, VACUUM FULL and REINDEX to change tablespace on the fly |