Обсуждение: pgsql: Replace the parser's namespace tree (which formerly had the same

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

pgsql: Replace the parser's namespace tree (which formerly had the same

От
tgl@svr1.postgresql.org (Tom Lane)
Дата:
Log Message:
-----------
Replace the parser's namespace tree (which formerly had the same
representation as the jointree) with two lists of RTEs, one showing
the RTEs accessible by qualified names, and the other showing the RTEs
accessible by unqualified names.  I think this is conceptually simpler
than what we did before, and it's sure a whole lot easier to search.
This seems to eliminate the parse-time bottleneck for deeply nested
JOIN structures that was exhibited by phil@vodafone.

Modified Files:
--------------
    pgsql/src/backend/catalog:
        heap.c (r1.284 -> r1.285)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/heap.c.diff?r1=1.284&r2=1.285)
    pgsql/src/backend/commands:
        tablecmds.c (r1.159 -> r1.160)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/tablecmds.c.diff?r1=1.159&r2=1.160)
    pgsql/src/backend/parser:
        analyze.c (r1.321 -> r1.322)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/analyze.c.diff?r1=1.321&r2=1.322)
        parse_clause.c (r1.141 -> r1.142)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_clause.c.diff?r1=1.141&r2=1.142)
        parse_relation.c (r1.110 -> r1.111)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_relation.c.diff?r1=1.110&r2=1.111)
        parse_target.c (r1.135 -> r1.136)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_target.c.diff?r1=1.135&r2=1.136)
    pgsql/src/backend/utils/adt:
        ruleutils.c (r1.199 -> r1.200)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/ruleutils.c.diff?r1=1.199&r2=1.200)
    pgsql/src/include/nodes:
        parsenodes.h (r1.279 -> r1.280)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/parsenodes.h.diff?r1=1.279&r2=1.280)
    pgsql/src/include/parser:
        parse_node.h (r1.43 -> r1.44)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/parse_node.h.diff?r1=1.43&r2=1.44)
        parse_relation.h (r1.50 -> r1.51)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/parse_relation.h.diff?r1=1.50&r2=1.51)