-
- Downloads
Pass collations to functions in FunctionCallInfoData, not FmgrInfo.
Since collation is effectively an argument, not a property of the function, FmgrInfo is really the wrong place for it; and this becomes critical in cases where a cached FmgrInfo is used for varying purposes that might need different collation settings. Fix by passing it in FunctionCallInfoData instead. In particular this allows a clean fix for bug #5970 (record_cmp not working). This requires touching a bit more code than the original method, but nobody ever thought that collations would not be an invasive patch...
Showing
- contrib/btree_gin/btree_gin.c 1 addition, 1 deletioncontrib/btree_gin/btree_gin.c
- contrib/btree_gist/btree_text.c 24 additions, 6 deletionscontrib/btree_gist/btree_text.c
- src/backend/access/common/reloptions.c 1 addition, 1 deletionsrc/backend/access/common/reloptions.c
- src/backend/access/common/scankey.c 3 additions, 3 deletionssrc/backend/access/common/scankey.c
- src/backend/access/gin/ginget.c 18 additions, 15 deletionssrc/backend/access/gin/ginget.c
- src/backend/access/gin/ginutil.c 25 additions, 27 deletionssrc/backend/access/gin/ginutil.c
- src/backend/access/gist/gistget.c 13 additions, 11 deletionssrc/backend/access/gist/gistget.c
- src/backend/access/gist/gistscan.c 2 additions, 8 deletionssrc/backend/access/gist/gistscan.c
- src/backend/access/hash/hashutil.c 2 additions, 1 deletionsrc/backend/access/hash/hashutil.c
- src/backend/access/index/indexam.c 0 additions, 1 deletionsrc/backend/access/index/indexam.c
- src/backend/access/nbtree/nbtinsert.c 4 additions, 3 deletionssrc/backend/access/nbtree/nbtinsert.c
- src/backend/access/nbtree/nbtsearch.c 6 additions, 5 deletionssrc/backend/access/nbtree/nbtsearch.c
- src/backend/access/nbtree/nbtsort.c 5 additions, 3 deletionssrc/backend/access/nbtree/nbtsort.c
- src/backend/access/nbtree/nbtutils.c 24 additions, 16 deletionssrc/backend/access/nbtree/nbtutils.c
- src/backend/commands/analyze.c 6 additions, 5 deletionssrc/backend/commands/analyze.c
- src/backend/commands/trigger.c 2 additions, 1 deletionsrc/backend/commands/trigger.c
- src/backend/commands/tsearchcmds.c 6 additions, 1 deletionsrc/backend/commands/tsearchcmds.c
- src/backend/executor/execGrouping.c 4 additions, 0 deletionssrc/backend/executor/execGrouping.c
- src/backend/executor/execQual.c 15 additions, 10 deletionssrc/backend/executor/execQual.c
- src/backend/executor/execUtils.c 4 additions, 3 deletionssrc/backend/executor/execUtils.c
Loading
Please register or sign in to comment