[PATCH] Use optimized single-datum tuplesort in ExecSort
В списке pgsql-hackers по дате отправления:
| От | Ronan Dunklau |
|---|---|
| Тема | [PATCH] Use optimized single-datum tuplesort in ExecSort |
| Дата | |
| Msg-id | 3177670.itZtoPt7T5@aivenronan обсуждение исходный текст |
| Ответы |
Re: [PATCH] Use optimized single-datum tuplesort in ExecSort
Re: [PATCH] Use optimized single-datum tuplesort in ExecSort |
| Список | pgsql-hackers |
Hello, While testing the patch "Add proper planner support for ORDER BY / DISTINCT aggregates" [0] I discovered the performance penalty from adding a sort node essentially came from not using the single-datum tuplesort optimization in ExecSort (contrary to the sorting done in ExecAgg). I originally proposed this patch as a companion in the same thread [1], but following James suggestion I'm making a separate thread just for this as the optimization is worthwhile independently of David's patch: it looks like we can expect a 2x speedup on a "select a single ordered column" case. The patch aimed to be as simple as possible: we only turn this optimization on when the tuple being sorted has only one attribute, it is "byval" (so as not to incur copies which would be hard to track in the execution tree) and unbound (again, not having to deal with copying borrowed datum anywhere). The attached patch is originally by me, with some cleanup by Ranier Vilela. I'm sending Ranier's version here. [0]: https://commitfest.postgresql.org/33/3164/ [1]: https://www.postgresql.org/message-id/4480689.ObhdGn8bVM%40aivenronan -- Ronan Dunklau
В списке pgsql-hackers по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера