Re: Add IS_INDEX macro to brin and gist index

Поиск
Список
Период
Сортировка
От Andreas Karlsson
Тема Re: Add IS_INDEX macro to brin and gist index
Дата
Msg-id 0708749e-69ce-41aa-bcac-52a4a595924d@proxel.se
обсуждение исходный текст
Ответ на Add IS_INDEX macro to brin and gist index  (Japin Li <japinli@hotmail.com>)
Ответы Re: Add IS_INDEX macro to brin and gist index
Список pgsql-hackers
On 1/14/26 2:56 AM, Japin Li wrote:
> 
> Hi, hackers,
> 
> While working on pageinspect [0], I noticed that brin_page_items() and
> gist_page_items() only checked the access method (IS_BRIN/IS_GIST) but did
> not verify that the passed relation is actually an index relation.
> 
> To make the check more robust and consistent with other pageinspect index
> functions (like btreefuncs.c, hashfuncs.c, etc.), the attached patch:
> 
> 1. Defines a local helper macro IS_INDEX(r) in both brinfuncs.c and gistfuncs.c.
> 
> 2. Updates the error check to require both: the relation must be an index and
>     use the expected access method.
> 
> The change is very small, low-risk, and only affects two functions in
> contrib/pageinspect.

Since the two functions you touch are gist_page_items() and 
brin_page_items() is there actually any harm from being able to use the 
index definition from a partitioned when parsing the page? Seems 
unnecessary to prevent people from doing so unless I am missing 
something. It is not like we have any way to prevent the wrong index 
from being used when parsing page the page so why prevent partitioned 
indexes specifically?

Andreas




В списке pgsql-hackers по дате отправления: