Hi Dmitry,
On 06/19/2018 06:01 AM, Dmitry Dolgov wrote:
On 18 June 2018 at 19:31, Alexander Korotkov <a.korot...@postgrespro.ru> wrote:
Is skip scan only possible for index-only scan? I guess, that no. We
could also make plain index scan to behave like a skip scan. And it
should be useful for accelerating DISTINCT ON clause. Thus, we might
have 4 kinds of index scan: IndexScan, IndexOnlyScan, IndexSkipScan,
IndexOnlySkipScan. So, I don't think I like index scan nodes to
multiply this way, and it would be probably better to keep number
nodes smaller. But I don't insist on that, and I would like to hear
other opinions too.
In one of patches I'm working on I had similar situation, when I wanted to
split one node into two similar nodes (before I just extended it) and logically
it made perfect sense. But it turned out to be quite useless and the advantage
I've got wasn't worth it - and just to mention, those nodes had more differences
than in this patch. So I agree that probably it would be better to keep using
IndexOnlyScan.
I looked at this today, and creating a new node (T_IndexOnlySkipScan)
would make the patch more complex.
The question is if the patch should create such a node such that future
patches didn't have to deal with refactoring to a new node to cover
additional functionality.
Thanks for your feedback !
Best regards,
Jesper