-
- Downloads
Create a 'type cache' that keeps track of the data needed for any particular
datatype by array_eq and array_cmp; use this to solve problems with memory leaks in array indexing support. The parser's equality_oper and ordering_oper routines also use the cache. Change the operator search algorithms to look for appropriate btree or hash index opclasses, instead of assuming operators named '<' or '=' have the right semantics. (ORDER BY ASC/DESC now also look at opclasses, instead of assuming '<' and '>' are the right things.) Add several more index opclasses so that there is no regression in functionality for base datatypes. initdb forced due to catalog additions.
Showing
- src/backend/commands/analyze.c 4 additions, 11 deletionssrc/backend/commands/analyze.c
- src/backend/commands/indexcmds.c 3 additions, 2 deletionssrc/backend/commands/indexcmds.c
- src/backend/commands/opclasscmds.c 4 additions, 2 deletionssrc/backend/commands/opclasscmds.c
- src/backend/nodes/copyfuncs.c 7 additions, 6 deletionssrc/backend/nodes/copyfuncs.c
- src/backend/nodes/equalfuncs.c 5 additions, 4 deletionssrc/backend/nodes/equalfuncs.c
- src/backend/optimizer/plan/createplan.c 4 additions, 3 deletionssrc/backend/optimizer/plan/createplan.c
- src/backend/optimizer/plan/planner.c 4 additions, 2 deletionssrc/backend/optimizer/plan/planner.c
- src/backend/parser/gram.y 29 additions, 16 deletionssrc/backend/parser/gram.y
- src/backend/parser/parse_clause.c 29 additions, 13 deletionssrc/backend/parser/parse_clause.c
- src/backend/parser/parse_oper.c 138 additions, 74 deletionssrc/backend/parser/parse_oper.c
- src/backend/utils/adt/acl.c 18 additions, 1 deletionsrc/backend/utils/adt/acl.c
- src/backend/utils/adt/arrayfuncs.c 59 additions, 73 deletionssrc/backend/utils/adt/arrayfuncs.c
- src/backend/utils/adt/cash.c 18 additions, 1 deletionsrc/backend/utils/adt/cash.c
- src/backend/utils/adt/nabstime.c 115 additions, 139 deletionssrc/backend/utils/adt/nabstime.c
- src/backend/utils/adt/ri_triggers.c 13 additions, 63 deletionssrc/backend/utils/adt/ri_triggers.c
- src/backend/utils/adt/ruleutils.c 24 additions, 11 deletionssrc/backend/utils/adt/ruleutils.c
- src/backend/utils/cache/Makefile 2 additions, 2 deletionssrc/backend/utils/cache/Makefile
- src/backend/utils/cache/lsyscache.c 33 additions, 20 deletionssrc/backend/utils/cache/lsyscache.c
- src/backend/utils/cache/typcache.c 292 additions, 0 deletionssrc/backend/utils/cache/typcache.c
- src/backend/utils/sort/tuplesort.c 6 additions, 16 deletionssrc/backend/utils/sort/tuplesort.c
Loading
Please register or sign in to comment