On Wed, Mar 2, 2022 at 5:25 AM Aleksander Alekseev <aleksan...@timescale.com> wrote: > ``` > Datum > pg_stop_backup_v2(PG_FUNCTION_ARGS) > { > - ReturnSetInfo *rsinfo = (ReturnSetInfo *) fcinfo->resultinfo; > +#define PG_STOP_BACKUP_V2_COLS 3 > TupleDesc tupdesc; > - Tuplestorestate *tupstore; > - MemoryContext per_query_ctx; > - MemoryContext oldcontext; > - Datum values[3]; > - bool nulls[3]; > + Datum values[PG_STOP_BACKUP_V2_COLS]; > + bool nulls[PG_STOP_BACKUP_V2_COLS]; > ``` > > Declaring a macro inside the procedure body is a bit unconventional. > Since it doesn't seem to be used for anything except these two array > declarations I suggest keeping simply "3" here.
I think we do this kind of thing in various places in similar situations, and I think it is good style. It makes it easier to catch everything if you ever need to update the code. -- Robert Haas EDB: http://www.enterprisedb.com