Обсуждение: pgsql: Refactor ExecProject and associated routines so that fast-path
pgsql: Refactor ExecProject and associated routines so that fast-path
От
tgl@postgresql.org (Tom Lane)
Дата:
Log Message: ----------- Refactor ExecProject and associated routines so that fast-path code is used for simple Var targetlist entries all the time, even when there are other entries that are not simple Vars. Also, ensure that we prefetch attributes (with slot_getsomeattrs) for all Vars in the targetlist, even those buried within expressions. In combination these changes seem to significantly reduce the runtime for cases where tlists are mostly but not exclusively Vars. Per my proposal of yesterday. Modified Files: -------------- pgsql/src/backend/executor: execQual.c (r1.243 -> r1.244) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execQual.c?r1=1.243&r2=1.244) execUtils.c (r1.157 -> r1.158) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execUtils.c?r1=1.157&r2=1.158) pgsql/src/include/nodes: execnodes.h (r1.202 -> r1.203) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/execnodes.h?r1=1.202&r2=1.203)