diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2006-12-04 02:06:55 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2006-12-04 02:06:55 +0000 |
commit | 8dcc8e376149adcfba012a9e9b7b0692bcbff9a2 (patch) | |
tree | be2c6c7978e6a041ee7a0b70bbd833d391108500 /src/include/executor | |
parent | 406d028a9bb1a531d8e413918709f8d99f5c7783 (diff) | |
download | postgresql-8dcc8e376149adcfba012a9e9b7b0692bcbff9a2.tar.gz postgresql-8dcc8e376149adcfba012a9e9b7b0692bcbff9a2.zip |
Refactor ExecGetJunkAttribute to avoid searching for junk attributes
by name on each and every row processed. Profiling suggests this may
buy a percent or two for simple UPDATE scenarios, which isn't huge,
but when it's so easy to get ...
Diffstat (limited to 'src/include/executor')
-rw-r--r-- | src/include/executor/executor.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h index d030b4deea4..beb103c88e3 100644 --- a/src/include/executor/executor.h +++ b/src/include/executor/executor.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/executor/executor.h,v 1.130 2006/10/04 00:30:08 momjian Exp $ + * $PostgreSQL: pgsql/src/include/executor/executor.h,v 1.131 2006/12/04 02:06:55 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -110,8 +110,10 @@ extern JunkFilter *ExecInitJunkFilter(List *targetList, bool hasoid, extern JunkFilter *ExecInitJunkFilterConversion(List *targetList, TupleDesc cleanTupType, TupleTableSlot *slot); -extern bool ExecGetJunkAttribute(JunkFilter *junkfilter, TupleTableSlot *slot, - char *attrName, Datum *value, bool *isNull); +extern AttrNumber ExecFindJunkAttribute(JunkFilter *junkfilter, + const char *attrName); +extern Datum ExecGetJunkAttribute(TupleTableSlot *slot, AttrNumber attno, + bool *isNull); extern TupleTableSlot *ExecFilterJunk(JunkFilter *junkfilter, TupleTableSlot *slot); extern HeapTuple ExecRemoveJunk(JunkFilter *junkfilter, TupleTableSlot *slot); |