Revise sinval code to remove no-longer-used tuple TID from inval messages.
This requires adjusting the API for syscache callback functions: they now get a hash value, not a TID, to identify the target tuple. Most of them weren't paying any attention to that argument anyway, but plancache did require a small amount of fixing. Also, improve performance a trifle by avoiding sending duplicate inval messages when a heap_update isn't changing the catcache lookup columns.
Showing
- src/backend/access/heap/heapam.c 15 additions, 15 deletionssrc/backend/access/heap/heapam.c
- src/backend/catalog/namespace.c 2 additions, 2 deletionssrc/backend/catalog/namespace.c
- src/backend/nodes/copyfuncs.c 1 addition, 2 deletionssrc/backend/nodes/copyfuncs.c
- src/backend/nodes/outfuncs.c 1 addition, 3 deletionssrc/backend/nodes/outfuncs.c
- src/backend/optimizer/plan/setrefs.c 10 additions, 13 deletionssrc/backend/optimizer/plan/setrefs.c
- src/backend/optimizer/util/predtest.c 2 additions, 2 deletionssrc/backend/optimizer/util/predtest.c
- src/backend/parser/parse_oper.c 2 additions, 2 deletionssrc/backend/parser/parse_oper.c
- src/backend/utils/adt/acl.c 2 additions, 2 deletionssrc/backend/utils/adt/acl.c
- src/backend/utils/cache/attoptcache.c 1 addition, 1 deletionsrc/backend/utils/cache/attoptcache.c
- src/backend/utils/cache/catcache.c 30 additions, 18 deletionssrc/backend/utils/cache/catcache.c
- src/backend/utils/cache/inval.c 110 additions, 111 deletionssrc/backend/utils/cache/inval.c
- src/backend/utils/cache/plancache.c 10 additions, 10 deletionssrc/backend/utils/cache/plancache.c
- src/backend/utils/cache/spccache.c 1 addition, 1 deletionsrc/backend/utils/cache/spccache.c
- src/backend/utils/cache/ts_cache.c 1 addition, 1 deletionsrc/backend/utils/cache/ts_cache.c
- src/backend/utils/misc/superuser.c 3 additions, 3 deletionssrc/backend/utils/misc/superuser.c
- src/include/nodes/plannodes.h 2 additions, 3 deletionssrc/include/nodes/plannodes.h
- src/include/storage/sinval.h 9 additions, 16 deletionssrc/include/storage/sinval.h
- src/include/utils/catcache.h 3 additions, 3 deletionssrc/include/utils/catcache.h
- src/include/utils/inval.h 5 additions, 3 deletionssrc/include/utils/inval.h
Loading
Please register or sign in to comment