pgsql: Revise sinval code to remove no-longer-used tuple TID from inval
От | Tom Lane |
---|---|
Тема | pgsql: Revise sinval code to remove no-longer-used tuple TID from inval |
Дата | |
Msg-id | E1QtT3J-0000GL-Nc@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
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. Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/b5282aa893e565b7844f8237462cb843438cdd5e Modified Files -------------- src/backend/access/heap/heapam.c | 30 +++--- src/backend/catalog/namespace.c | 4 +- src/backend/nodes/copyfuncs.c | 3 +- src/backend/nodes/outfuncs.c | 4 +- src/backend/optimizer/plan/setrefs.c | 23 ++-- src/backend/optimizer/util/predtest.c | 4 +- src/backend/parser/parse_oper.c | 4 +- src/backend/utils/adt/acl.c | 4 +- src/backend/utils/cache/attoptcache.c | 2 +- src/backend/utils/cache/catcache.c | 48 +++++--- src/backend/utils/cache/inval.c | 221 ++++++++++++++++----------------- src/backend/utils/cache/plancache.c | 20 ++-- src/backend/utils/cache/spccache.c | 2 +- src/backend/utils/cache/ts_cache.c | 2 +- src/backend/utils/misc/superuser.c | 6 +- src/include/nodes/plannodes.h | 5 +- src/include/storage/sinval.h | 25 ++--- src/include/utils/catcache.h | 6 +- src/include/utils/inval.h | 8 +- 19 files changed, 210 insertions(+), 211 deletions(-)
В списке pgsql-committers по дате отправления: