Use new overflow-safe integer comparison functions.

Commit 6b80394781 introduced integer comparison functions designed
to be as efficient as possible while avoiding overflow.  This
commit makes use of these functions in many of the in-tree qsort()
comparators to help ensure transitivity.  Many of these comparator
functions should also see a small performance boost.

Author: Mats Kindahl
Reviewed-by: Andres Freund, Fabrízio de Royes Mello
Discussion: 
https://postgr.es/m/CA%2B14426g2Wa9QuUpmakwPxXFWG_1FaY0AsApkvcTBy-YfS6uaw%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3b42bdb47169c617cb79123c407a19d16458b49a

Modified Files
--------------
contrib/hstore/hstore_gist.c                    |  4 +++-
contrib/intarray/_int_tool.c                    |  9 +++------
contrib/intarray/_intbig_gist.c                 |  4 +++-
contrib/pg_stat_statements/pg_stat_statements.c |  8 ++------
contrib/pg_trgm/trgm_op.c                       |  8 ++------
src/backend/access/nbtree/nbtinsert.c           |  8 ++------
src/backend/access/nbtree/nbtpage.c             | 10 +++-------
src/backend/access/nbtree/nbtsplitloc.c         |  8 ++------
src/backend/access/spgist/spgdoinsert.c         |  5 ++---
src/backend/access/spgist/spgtextproc.c         |  3 ++-
src/backend/backup/basebackup_incremental.c     |  8 ++------
src/backend/backup/walsummary.c                 |  7 ++-----
src/backend/catalog/heap.c                      |  7 ++-----
src/backend/nodes/list.c                        | 13 +++----------
src/backend/nodes/tidbitmap.c                   |  7 ++-----
src/backend/parser/parse_agg.c                  |  3 ++-
src/backend/postmaster/autovacuum.c             |  7 +++----
src/backend/replication/logical/reorderbuffer.c |  7 ++-----
src/backend/replication/syncrep.c               |  8 ++------
src/backend/utils/adt/oid.c                     |  7 ++-----
src/backend/utils/adt/tsgistidx.c               | 10 +++-------
src/backend/utils/adt/tsquery_gist.c            |  7 +++----
src/backend/utils/adt/tsvector.c                |  5 ++---
src/backend/utils/adt/tsvector_op.c             |  5 ++---
src/backend/utils/adt/xid.c                     |  7 ++-----
src/backend/utils/cache/relcache.c              |  3 ++-
src/backend/utils/cache/syscache.c              |  5 ++---
src/backend/utils/cache/typcache.c              |  8 ++------
src/backend/utils/resowner/resowner.c           | 10 ++--------
src/bin/pg_dump/pg_dump_sort.c                  |  7 ++-----
src/bin/pg_upgrade/function.c                   | 12 ++++++------
src/bin/pg_walsummary/pg_walsummary.c           |  8 ++------
src/bin/psql/crosstabview.c                     |  3 ++-
src/include/access/gin_private.h                |  8 ++------
34 files changed, 80 insertions(+), 159 deletions(-)

Reply via email to