Обсуждение: pgsql: Heavily refactor btsortsupport_worker.

Поиск
Список
Период
Сортировка

pgsql: Heavily refactor btsortsupport_worker.

От
Robert Haas
Дата:
Heavily refactor btsortsupport_worker.

Prior to commit 4ea51cdfe85ceef8afabceb03c446574daa0ac23, this function
only had one job, which was to decide whether we could avoid trampolining
through the fmgr layer when performing sort comparisons.  As of that
commit, it has a second job, which is to decide whether we can use
abbreviated keys.  Unfortunately, those two tasks are somewhat intertwined
in the existing coding, which is likely why neither Peter Geoghegan nor
I noticed prior to commit that this calls pg_newlocale_from_collation() in
cases where it didn't previously.  The buildfarm noticed, though.

To fix, rewrite the logic so that the decision as to which comparator to
use is more cleanly separated from the decision about abbreviation.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/b529b65d1bf8537ca7fa024760a9782d7c8b66e5

Modified Files
--------------
src/backend/utils/adt/varlena.c |  191 ++++++++++++++++++---------------------
1 file changed, 86 insertions(+), 105 deletions(-)