diff options
author | Tom Lane | 2025-04-01 22:03:55 +0000 |
---|---|---|
committer | Tom Lane | 2025-04-01 22:03:55 +0000 |
commit | 6c12ae09f5a5d6c153eaea7901542591dc28fb9e (patch) | |
tree | 49e351e00c0f30aa00bac57a2dbbaedd9329ebfa /src/backend/utils/cache | |
parent | 6da2ba1d8a031984eb016fed6741bb2ac945f19d (diff) |
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
Diffstat (limited to 'src/backend/utils/cache')
-rw-r--r-- | src/backend/utils/cache/typcache.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/backend/utils/cache/typcache.c b/src/backend/utils/cache/typcache.c index 5a3b3788d02..ae65a1cce06 100644 --- a/src/backend/utils/cache/typcache.c +++ b/src/backend/utils/cache/typcache.c @@ -499,6 +499,7 @@ lookup_type_cache(Oid type_id, int flags) typentry->typrelid = typtup->typrelid; typentry->typsubscript = typtup->typsubscript; typentry->typelem = typtup->typelem; + typentry->typarray = typtup->typarray; typentry->typcollation = typtup->typcollation; typentry->flags |= TCFLAGS_HAVE_PG_TYPE_DATA; @@ -544,6 +545,7 @@ lookup_type_cache(Oid type_id, int flags) typentry->typrelid = typtup->typrelid; typentry->typsubscript = typtup->typsubscript; typentry->typelem = typtup->typelem; + typentry->typarray = typtup->typarray; typentry->typcollation = typtup->typcollation; typentry->flags |= TCFLAGS_HAVE_PG_TYPE_DATA; |