Nathan Bossart <nathandboss...@gmail.com> writes: > On Sat, Mar 08, 2025 at 05:17:40PM -0500, Tom Lane wrote: >> ReindexIndex() faces this same problem and solves it with some >> very complex code that manages to get the table's lock first.
> I noticed that amcheck's bt_index_check_internal() handles this problem, > ... > stats_lock_check_privileges() does something similar, but it's not as > cautious about the "heapid != IndexGetRelation(indrelid, false)" race > condition. Egad, we've already got three inconsistent implementations of this functionality? I think the first step must be to unify them into a common implementation, if at all possible. regards, tom lane