Create real array comparison functions (that use the element datatype's
comparison functions), replacing the highly bogus bitwise array_eq. Create a btree index opclass for ANYARRAY --- it is now possible to create indexes on array columns. Arrange to cache the results of catalog lookups across multiple array operations, instead of repeating the lookups on every call. Add string_to_array and array_to_string functions. Remove singleton_array, array_accum, array_assign, and array_subscript functions, since these were for proof-of-concept and not intended to become supported functions. Minor adjustments to behavior in some corner cases with empty or zero-dimensional arrays. Joe Conway (with some editorializing by Tom Lane).
Showing
- doc/src/sgml/array.sgml 278 additions, 9 deletionsdoc/src/sgml/array.sgml
- doc/src/sgml/func.sgml 198 additions, 1 deletiondoc/src/sgml/func.sgml
- src/backend/executor/execQual.c 4 additions, 4 deletionssrc/backend/executor/execQual.c
- src/backend/executor/nodeSubplan.c 1 addition, 121 deletionssrc/backend/executor/nodeSubplan.c
- src/backend/parser/parse_coerce.c 8 additions, 2 deletionssrc/backend/parser/parse_coerce.c
- src/backend/parser/parse_expr.c 2 additions, 2 deletionssrc/backend/parser/parse_expr.c
- src/backend/parser/parse_oper.c 91 additions, 31 deletionssrc/backend/parser/parse_oper.c
- src/backend/utils/adt/acl.c 25 additions, 8 deletionssrc/backend/utils/adt/acl.c
- src/backend/utils/adt/array_userfuncs.c 93 additions, 184 deletionssrc/backend/utils/adt/array_userfuncs.c
- src/backend/utils/adt/arrayfuncs.c 631 additions, 116 deletionssrc/backend/utils/adt/arrayfuncs.c
- src/backend/utils/adt/varlena.c 176 additions, 5 deletionssrc/backend/utils/adt/varlena.c
- src/backend/utils/cache/lsyscache.c 51 additions, 1 deletionsrc/backend/utils/cache/lsyscache.c
- src/include/catalog/catversion.h 2 additions, 2 deletionssrc/include/catalog/catversion.h
- src/include/catalog/pg_amop.h 10 additions, 1 deletionsrc/include/catalog/pg_amop.h
- src/include/catalog/pg_amproc.h 2 additions, 1 deletionsrc/include/catalog/pg_amproc.h
- src/include/catalog/pg_opclass.h 3 additions, 1 deletionsrc/include/catalog/pg_opclass.h
- src/include/catalog/pg_operator.h 12 additions, 2 deletionssrc/include/catalog/pg_operator.h
- src/include/catalog/pg_proc.h 21 additions, 12 deletionssrc/include/catalog/pg_proc.h
- src/include/parser/parse_oper.h 2 additions, 1 deletionsrc/include/parser/parse_oper.h
- src/include/utils/acl.h 2 additions, 1 deletionsrc/include/utils/acl.h
Loading
Please register or sign in to comment