Re: Index Skip Scan
От | Dmitry Dolgov |
---|---|
Тема | Re: Index Skip Scan |
Дата | |
Msg-id | 20200324163919.7nwqe72xzfatix4y@localhost обсуждение исходный текст |
Ответ на | Re: Index Skip Scan (David Rowley <dgrowleyml@gmail.com>) |
Ответы |
Re: Index Skip Scan
|
Список | pgsql-hackers |
> On Wed, Mar 11, 2020 at 11:17:51AM +1300, David Rowley wrote: > > Yes, I was complaining that a ProjectionPath breaks the optimisation > and I don't believe there's any reason that it should. > > I believe the way to make that work correctly requires paying > attention to the Path's uniquekeys rather than what type of path it > is. Thanks for the suggestion. As a result of the discussion I've modified the patch, does it look similar to what you had in mind? In this version if all conditions are met and there are corresponding unique keys, a new index skip scan path will be added to unique_pathlists. In case if requested distinct clauses match with unique keys, create_distinct_paths can choose this path without needen to know what kind of path is it. Also unique_keys are passed through ProjectionPath, so optimization for the example mentioned in this thread before now should work (I've added one test for that). I haven't changed anything about UniqueKey structure itself (one of the suggestions was about Expr instead of EquivalenceClass), but I believe we need anyway to figure out how two existing imlementation (in this patch and from [1]) of this idea can be connected. [1]: https://www.postgresql.org/message-id/flat/CAKU4AWrwZMAL%3DuaFUDMf4WGOVkEL3ONbatqju9nSXTUucpp_pw%40mail.gmail.com
Вложения
В списке pgsql-hackers по дате отправления: