Re: PATCH: Add REINDEX tag to event triggers

Jim Jones <jim.jones@uni-muenster.de>

From: Jim Jones <jim.jones@uni-muenster.de>
To: jian he <jian.universality@gmail.com>
Cc: Garrett Thornburg <film42@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2023-09-01T10:40:22Z
Lists: pgsql-hackers
On 01.09.23 11:23, jian he wrote:
> because the change made in here:
> https://git.postgresql.org/cgit/postgresql.git/diff/src/backend/commands/indexcmds.c?id=11af63fb48d278b86aa948a5b57f136ef03c2bb7
>
> I manually slight edited the patch content:
> from
>   static List *ChooseIndexColumnNames(List *indexElems);
>   static void ReindexIndex(RangeVar *indexRelation, ReindexParams *params,
>    bool isTopLevel);
> to
> static List *ChooseIndexColumnNames(const List *indexElems);
> static void ReindexIndex(const RangeVar *indexRelation, const
> ReindexParams *params,
> bool isTopLevel);
>
> can you try the attached one.

The patch applies cleanly. However, now the compiler complains about a 
qualifier mismatch

indexcmds.c:2707:33: warning: assignment discards ‘const’ qualifier from 
pointer target type [-Wdiscarded-qualifiers]
  2707 |         currentReindexStatement = stmt;


Perhaps 'const ReindexStmt *currentReindexStatement'?

Tests also work just fine. I also tested it against unique and partial 
indexes, and it worked as expected.

Jim




Commits

  1. Fix assertion failure with REINDEX and event triggers

  2. Add support for REINDEX in event triggers

  3. Doc: Improve documentation for creating custom scan paths.

  4. Add const decorations