pgsql: Avoid O(N^2) overhead in repeated nocachegetattr calls when - Mailing list pgsql-committers

From tgl@svr1.postgresql.org (Tom Lane)
Subject pgsql: Avoid O(N^2) overhead in repeated nocachegetattr calls when
Date
Msg-id 20050314044113.75BEE5675F@svr1.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Avoid O(N^2) overhead in repeated nocachegetattr calls when columns of
a tuple are being accessed via ExecEvalVar and the attcacheoff shortcut
isn't usable (due to nulls and/or varlena columns).  To do this, cache
Datums extracted from a tuple in the associated TupleTableSlot.
Also some code cleanup in and around the TupleTable handling.
Atsushi Ogawa with some kibitzing by Tom Lane.

Modified Files:
--------------
    pgsql/src/backend/access/common:
        heaptuple.c (r1.96 -> r1.97)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/common/heaptuple.c.diff?r1=1.96&r2=1.97)
    pgsql/src/backend/access/heap:
        tuptoaster.c (r1.47 -> r1.48)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/tuptoaster.c.diff?r1=1.47&r2=1.48)
    pgsql/src/backend/executor:
        execJunk.c (r1.46 -> r1.47)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execJunk.c.diff?r1=1.46&r2=1.47)
        execQual.c (r1.171 -> r1.172)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execQual.c.diff?r1=1.171&r2=1.172)
        execTuples.c (r1.83 -> r1.84)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execTuples.c.diff?r1=1.83&r2=1.84)
    pgsql/src/include/access:
        heapam.h (r1.94 -> r1.95)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/heapam.h.diff?r1=1.94&r2=1.95)
    pgsql/src/include/executor:
        executor.h (r1.115 -> r1.116)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/executor/executor.h.diff?r1=1.115&r2=1.116)
        tuptable.h (r1.26 -> r1.27)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/executor/tuptable.h.diff?r1=1.26&r2=1.27)

pgsql-committers by date:

Previous
From: momjian@svr1.postgresql.org (Bruce Momjian)
Date:
Subject: pgsql: Document client-only encodings.
Next
From: tgl@svr1.postgresql.org (Tom Lane)
Date:
Subject: pgsql: Note that the -F and -R command line options only affect