]> granicus.if.org Git - postgresql/commit
Revise sinval code to remove no-longer-used tuple TID from inval messages.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 16 Aug 2011 23:27:46 +0000 (19:27 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 16 Aug 2011 23:27:46 +0000 (19:27 -0400)
commitb5282aa893e565b7844f8237462cb843438cdd5e
treeb19170597a0a94685cc8c978c1c5800c411d02d1
parent632ae6829f7abda34e15082c91d9dfb3fc0f298b
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.
19 files changed:
src/backend/access/heap/heapam.c
src/backend/catalog/namespace.c
src/backend/nodes/copyfuncs.c
src/backend/nodes/outfuncs.c
src/backend/optimizer/plan/setrefs.c
src/backend/optimizer/util/predtest.c
src/backend/parser/parse_oper.c
src/backend/utils/adt/acl.c
src/backend/utils/cache/attoptcache.c
src/backend/utils/cache/catcache.c
src/backend/utils/cache/inval.c
src/backend/utils/cache/plancache.c
src/backend/utils/cache/spccache.c
src/backend/utils/cache/ts_cache.c
src/backend/utils/misc/superuser.c
src/include/nodes/plannodes.h
src/include/storage/sinval.h
src/include/utils/catcache.h
src/include/utils/inval.h