pgsql: Add a relkind field to RangeTblEntry to avoid some syscache look
От | Tom Lane |
---|---|
Тема | pgsql: Add a relkind field to RangeTblEntry to avoid some syscache look |
Дата | |
Msg-id | E1Ps2Xl-0000sr-QG@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Add a relkind field to RangeTblEntry to avoid some syscache lookups. The recent additions for FDW support required checking foreign-table-ness in several places in the parse/plan chain. While it's not clear whether that would really result in a noticeable slowdown, it seems best to avoid any performance risk by keeping a copy of the relation's relkind in RangeTblEntry. That might have some other uses later, anyway. Per discussion. Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/bdca82f44d0e0168dece56cbd53b54ba142f328f Modified Files -------------- src/backend/catalog/dependency.c | 1 + src/backend/commands/copy.c | 1 + src/backend/nodes/copyfuncs.c | 1 + src/backend/nodes/equalfuncs.c | 1 + src/backend/nodes/nodeFuncs.c | 2 - src/backend/nodes/outfuncs.c | 2 +- src/backend/nodes/print.c | 8 +--- src/backend/nodes/readfuncs.c | 2 +- src/backend/optimizer/path/allpaths.c | 67 +++++++++++++++++---------------- src/backend/optimizer/plan/planner.c | 3 +- src/backend/parser/analyze.c | 23 +++-------- src/backend/parser/parse_relation.c | 2 + src/backend/parser/parse_target.c | 2 - src/backend/rewrite/rewriteHandler.c | 9 ++++- src/backend/utils/adt/ri_triggers.c | 2 + src/backend/utils/adt/ruleutils.c | 7 +++- src/include/catalog/catversion.h | 2 +- src/include/catalog/pg_class.h | 17 ++++---- src/include/nodes/parsenodes.h | 7 ++- 19 files changed, 85 insertions(+), 74 deletions(-)
В списке pgsql-committers по дате отправления: