Small improvement to tlist_matches_tupdesc()

Поиск
Список
Период
Сортировка
От David Rowley
Тема Small improvement to tlist_matches_tupdesc()
Дата
Msg-id CAKJS1f9+WAWONZNGeCujvTyZyTnDvSg+5Rd2J66PfgSQqa0v4Q@mail.gmail.com
обсуждение исходный текст
Ответы Re: Small improvement to tlist_matches_tupdesc()
Список pgsql-hackers
I just found myself in execScan.c. I noticed that tlist_matches_tupdesc() is a bit wasteful in some cases as it goes to the trouble of matching the tlist to the TupleDesc item by item until it runs out of tlist items or finds a non-match. Once the loop completes it ensures that all tlist items were consumed, so basically in other words, it checks the lengths match.

I think likely this was just not made optimal originally in d0b4399 when the length property etc were added to List

The attached patch adds a fast path so that no list items are compared if the lengths don't match.

Is this worth fixing?

--
 David Rowley                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
Вложения

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

Предыдущее
От: Noah Misch
Дата:
Сообщение: Re: pg_dump
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Small improvement to tlist_matches_tupdesc()