pgsql: Introduce a SQL-callable function array_sort(anyarray). - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Introduce a SQL-callable function array_sort(anyarray).
Date
Msg-id E1tzjih-002B76-2a@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Introduce a SQL-callable function array_sort(anyarray).

Create a function that will sort the elements of an array
according to the element type's sort order.  If the array
has more than one dimension, the sub-arrays of the first
dimension are sorted per normal array-comparison rules,
leaving their contents alone.

In support of this, add pg_type.typarray to the set of fields
cached by the typcache.

Author: Junwang Zhao <zhjwpku@gmail.com>
Co-authored-by: Jian He <jian.universality@gmail.com>
Reviewed-by: Aleksander Alekseev <aleksander@timescale.com>
Discussion: https://postgr.es/m/CAEG8a3J41a4dpw_-F94fF-JPRXYxw-GfsgoGotKcjs9LVfEEvw@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/6c12ae09f5a5d6c153eaea7901542591dc28fb9e

Modified Files
--------------
doc/src/sgml/func.sgml                         |  36 +++++
src/backend/utils/adt/array_userfuncs.c        | 178 +++++++++++++++++++++++++
src/backend/utils/cache/typcache.c             |   2 +
src/include/catalog/catversion.h               |   2 +-
src/include/catalog/pg_proc.dat                |  12 ++
src/include/utils/typcache.h                   |   1 +
src/test/regress/expected/arrays.out           | 142 ++++++++++++++++++++
src/test/regress/expected/collate.icu.utf8.out |  13 ++
src/test/regress/sql/arrays.sql                |  36 +++++
src/test/regress/sql/collate.icu.utf8.sql      |   4 +
src/tools/pgindent/typedefs.list               |   1 +
11 files changed, 426 insertions(+), 1 deletion(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Fix detection and handling of strchrnul() for macOS 15.4.
Next
From: David Rowley
Date:
Subject: pgsql: Fix planner's failure to identify multiple hashable ScalarArrayO