-
- Downloads
Add SQL-accessible functions for inspecting index AM properties.
Per discussion, we should provide such functions to replace the lost ability to discover AM properties by inspecting pg_am (cf commit 65c5fcd3). The added functionality is also meant to displace any code that was looking directly at pg_index.indoption, since we'd rather not believe that the bit meanings in that field are part of any client API contract. As future-proofing, define the SQL API to not assume that properties that are currently AM-wide or index-wide will remain so unless they logically must be; instead, expose them only when inquiring about a specific index or even specific index column. Also provide the ability for an index AM to override the behavior. In passing, document pg_am.amtype, overlooked in commit 473b9328. Andrew Gierth, with kibitzing by me and others Discussion: <87mvl5on7n.fsf@news-spur.riddles.org.uk>
Showing
- contrib/bloom/blutils.c 1 addition, 0 deletionscontrib/bloom/blutils.c
- doc/src/sgml/catalogs.sgml 25 additions, 4 deletionsdoc/src/sgml/catalogs.sgml
- doc/src/sgml/func.sgml 165 additions, 0 deletionsdoc/src/sgml/func.sgml
- doc/src/sgml/indexam.sgml 50 additions, 0 deletionsdoc/src/sgml/indexam.sgml
- src/backend/access/brin/brin.c 1 addition, 0 deletionssrc/backend/access/brin/brin.c
- src/backend/access/gin/ginutil.c 1 addition, 0 deletionssrc/backend/access/gin/ginutil.c
- src/backend/access/gist/gist.c 1 addition, 0 deletionssrc/backend/access/gist/gist.c
- src/backend/access/gist/gistutil.c 100 additions, 0 deletionssrc/backend/access/gist/gistutil.c
- src/backend/access/hash/hash.c 1 addition, 0 deletionssrc/backend/access/hash/hash.c
- src/backend/access/index/amapi.c 24 additions, 3 deletionssrc/backend/access/index/amapi.c
- src/backend/access/nbtree/nbtree.c 1 addition, 0 deletionssrc/backend/access/nbtree/nbtree.c
- src/backend/access/nbtree/nbtutils.c 26 additions, 0 deletionssrc/backend/access/nbtree/nbtutils.c
- src/backend/access/spgist/spgutils.c 1 addition, 0 deletionssrc/backend/access/spgist/spgutils.c
- src/backend/catalog/index.c 1 addition, 1 deletionsrc/backend/catalog/index.c
- src/backend/commands/opclasscmds.c 3 additions, 3 deletionssrc/backend/commands/opclasscmds.c
- src/backend/executor/execAmi.c 1 addition, 1 deletionsrc/backend/executor/execAmi.c
- src/backend/utils/adt/Makefile 1 addition, 1 deletionsrc/backend/utils/adt/Makefile
- src/backend/utils/adt/amutils.c 390 additions, 0 deletionssrc/backend/utils/adt/amutils.c
- src/include/access/amapi.h 35 additions, 1 deletionsrc/include/access/amapi.h
- src/include/access/gist_private.h 3 additions, 0 deletionssrc/include/access/gist_private.h
Loading
Please register or sign in to comment