Re: heapgettup() with NoMovementScanDirection unused in core?
От | Melanie Plageman |
---|---|
Тема | Re: heapgettup() with NoMovementScanDirection unused in core? |
Дата | |
Msg-id | CAAKRu_ZOScXUA+pSX3QEn2QP++V8Ho_oGwR_tRoP1OMn6MMGsg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: heapgettup() with NoMovementScanDirection unused in core? (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: heapgettup() with NoMovementScanDirection unused in core?
|
Список | pgsql-hackers |
Hi, I have written the patch to remove the unreachable code in heapgettup_pagemode](). On Wed, Jan 25, 2023 at 10:02 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: > > I wonder if we couldn't also get rid of this confusingly-inconsistent > alternative usage in the planner: > > * 'indexscandir' is one of: > * ForwardScanDirection: forward scan of an ordered index > * BackwardScanDirection: backward scan of an ordered index > * NoMovementScanDirection: scan of an unordered index, or don't care > * (The executor doesn't care whether it gets ForwardScanDirection or > * NoMovementScanDirection for an indexscan, but the planner wants to > * distinguish ordered from unordered indexes for building pathkeys.) > > While that comment's claim is plausible, I think it's been wrong for > years. AFAICS indxpath.c makes pathkeys before it ever does this: > > index_is_ordered ? > ForwardScanDirection : > NoMovementScanDirection, > > and nothing depends on that later either. So I think we could > simplify this to something like "indexscandir is either > ForwardScanDirection or BackwardScanDirection. (Unordered > index types need not support BackwardScanDirection.)" > I also did what I *think* Tom is suggesting here -- make index scan's scan direction always forward or backward... Maybe the set should be two patches...dunno. - Melanie
Вложения
В списке pgsql-hackers по дате отправления: