Обсуждение: pgsql-server/src backend/nodes/copyfuncs.c bac ...

Поиск
Список
Период
Сортировка

pgsql-server/src backend/nodes/copyfuncs.c bac ...

От
tgl@postgresql.org (Tom Lane)
Дата:
CVSROOT:    /cvsroot
Module name:    pgsql-server
Changes by:    tgl@postgresql.org    02/11/24 16:52:15

Modified files:
    src/backend/nodes: copyfuncs.c equalfuncs.c list.c outfuncs.c
                       readfuncs.c
    src/backend/optimizer/path: indxpath.c joinpath.c orindxpath.c
                                tidpath.c
    src/backend/optimizer/plan: initsplan.c
    src/backend/optimizer/util: pathnode.c plancat.c relnode.c
                                restrictinfo.c
    src/include/nodes: nodes.h pg_list.h relation.h
    src/include/optimizer: paths.h restrictinfo.h

Log message:
    Restructure planning of nestloop inner indexscans so that the set of usable
    joinclauses is determined accurately for each join.  Formerly, the code only
    considered joinclauses that used all of the rels from the outer side of the
    join; thus for example
    FROM (a CROSS JOIN b) JOIN c ON (c.f1 = a.x AND c.f2 = b.y)
    could not exploit a two-column index on c(f1,f2), since neither of the
    qual clauses would be in the joininfo list it looked in.  The new code does
    this correctly, and also is able to eliminate redundant clauses, thus fixing
    the problem noted 24-Oct-02 by Hans-J�rgen Sch�nig.