Skip site navigation (1) Skip section navigation (2)

pgsql: Convert oidvector and int2vector into variable-length arrays.

From: tgl(at)svr1(dot)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Convert oidvector and int2vector into variable-length arrays.
Date: 2005-03-29 00:17:28
Message-ID: 20050329001728.638C953585@svr1.postgresql.org (view raw or flat)
Thread:
Lists: pgsql-committers
Log Message:
-----------
Convert oidvector and int2vector into variable-length arrays.  This
change saves a great deal of space in pg_proc and its primary index,
and it eliminates the former requirement that INDEX_MAX_KEYS and
FUNC_MAX_ARGS have the same value.  INDEX_MAX_KEYS is still embedded
in the on-disk representation (because it affects index tuple header
size), but FUNC_MAX_ARGS is not.  I believe it would now be possible
to increase FUNC_MAX_ARGS at little cost, but haven't experimented yet.
There are still a lot of vestigial references to FUNC_MAX_ARGS, which
I will clean up in a separate pass.  However, getting rid of it
altogether would require changing the FunctionCallInfoData struct,
and I'm not sure I want to buy into that.

Modified Files:
--------------
    pgsql/contrib/dblink:
        dblink.c (r1.38 -> r1.39)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/contrib/dblink/dblink.c.diff?r1=1.38&r2=1.39)
    pgsql/contrib/dbmirror:
        pending.c (r1.20 -> r1.21)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/contrib/dbmirror/pending.c.diff?r1=1.20&r2=1.21)
    pgsql/doc/src/sgml:
        catalogs.sgml (r2.97 -> r2.98)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/catalogs.sgml.diff?r1=2.97&r2=2.98)
        trigger.sgml (r1.41 -> r1.42)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/trigger.sgml.diff?r1=1.41&r2=1.42)
    pgsql/src/backend/access/hash:
        hashfunc.c (r1.42 -> r1.43)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/hash/hashfunc.c.diff?r1=1.42&r2=1.43)
    pgsql/src/backend/access/index:
        genam.c (r1.45 -> r1.46)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/index/genam.c.diff?r1=1.45&r2=1.46)
    pgsql/src/backend/access/nbtree:
        nbtcompare.c (r1.50 -> r1.51)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtcompare.c.diff?r1=1.50&r2=1.51)
        nbtsearch.c (r1.90 -> r1.91)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtsearch.c.diff?r1=1.90&r2=1.91)
    pgsql/src/backend/access/rtree:
        rtscan.c (r1.57 -> r1.58)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/rtree/rtscan.c.diff?r1=1.57&r2=1.58)
    pgsql/src/backend/bootstrap:
        bootstrap.c (r1.199 -> r1.200)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/bootstrap/bootstrap.c.diff?r1=1.199&r2=1.200)
    pgsql/src/backend/catalog:
        genbki.sh (r1.32 -> r1.33)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/genbki.sh.diff?r1=1.32&r2=1.33)
        index.c (r1.249 -> r1.250)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/index.c.diff?r1=1.249&r2=1.250)
        information_schema.sql (r1.26 -> r1.27)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/information_schema.sql.diff?r1=1.26&r2=1.27)
        namespace.c (r1.73 -> r1.74)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/namespace.c.diff?r1=1.73&r2=1.74)
        pg_proc.c (r1.123 -> r1.124)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_proc.c.diff?r1=1.123&r2=1.124)
    pgsql/src/backend/commands:
        aggregatecmds.c (r1.22 -> r1.23)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/aggregatecmds.c.diff?r1=1.22&r2=1.23)
        cluster.c (r1.133 -> r1.134)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/cluster.c.diff?r1=1.133&r2=1.134)
        functioncmds.c (r1.56 -> r1.57)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/functioncmds.c.diff?r1=1.56&r2=1.57)
        opclasscmds.c (r1.29 -> r1.30)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/opclasscmds.c.diff?r1=1.29&r2=1.30)
        tablecmds.c (r1.151 -> r1.152)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/tablecmds.c.diff?r1=1.151&r2=1.152)
        trigger.c (r1.181 -> r1.182)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/trigger.c.diff?r1=1.181&r2=1.182)
    pgsql/src/backend/executor:
        execQual.c (r1.174 -> r1.175)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execQual.c.diff?r1=1.174&r2=1.175)
        functions.c (r1.93 -> r1.94)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/functions.c.diff?r1=1.93&r2=1.94)
        nodeAgg.c (r1.131 -> r1.132)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeAgg.c.diff?r1=1.131&r2=1.132)
    pgsql/src/backend/optimizer/util:
        clauses.c (r1.190 -> r1.191)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/clauses.c.diff?r1=1.190&r2=1.191)
        plancat.c (r1.102 -> r1.103)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/plancat.c.diff?r1=1.102&r2=1.103)
    pgsql/src/backend/parser:
        parse_agg.c (r1.67 -> r1.68)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_agg.c.diff?r1=1.67&r2=1.68)
        parse_coerce.c (r2.126 -> r2.127)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_coerce.c.diff?r1=2.126&r2=2.127)
    pgsql/src/backend/tcop:
        fastpath.c (r1.77 -> r1.78)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/fastpath.c.diff?r1=1.77&r2=1.78)
    pgsql/src/backend/utils/adt:
        arrayfuncs.c (r1.117 -> r1.118)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/arrayfuncs.c.diff?r1=1.117&r2=1.118)
        format_type.c (r1.39 -> r1.40)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/format_type.c.diff?r1=1.39&r2=1.40)
        int.c (r1.65 -> r1.66)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/int.c.diff?r1=1.65&r2=1.66)
        oid.c (r1.61 -> r1.62)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/oid.c.diff?r1=1.61&r2=1.62)
        regproc.c (r1.92 -> r1.93)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/regproc.c.diff?r1=1.92&r2=1.93)
        ruleutils.c (r1.188 -> r1.189)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/ruleutils.c.diff?r1=1.188&r2=1.189)
    pgsql/src/backend/utils/cache:
        lsyscache.c (r1.120 -> r1.121)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/lsyscache.c.diff?r1=1.120&r2=1.121)
        relcache.c (r1.217 -> r1.218)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/relcache.c.diff?r1=1.217&r2=1.218)
        syscache.c (r1.96 -> r1.97)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/syscache.c.diff?r1=1.96&r2=1.97)
    pgsql/src/backend/utils/fmgr:
        fmgr.c (r1.90 -> r1.91)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/fmgr/fmgr.c.diff?r1=1.90&r2=1.91)
    pgsql/src/include:
        c.h (r1.180 -> r1.181)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/c.h.diff?r1=1.180&r2=1.181)
    pgsql/src/include/catalog:
        catversion.h (r1.260 -> r1.261)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.260&r2=1.261)
        indexing.h (r1.84 -> r1.85)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/indexing.h.diff?r1=1.84&r2=1.85)
        pg_attribute.h (r1.113 -> r1.114)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_attribute.h.diff?r1=1.113&r2=1.114)
        pg_index.h (r1.35 -> r1.36)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_index.h.diff?r1=1.35&r2=1.36)
        pg_proc.h (r1.354 -> r1.355)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h.diff?r1=1.354&r2=1.355)
        pg_trigger.h (r1.20 -> r1.21)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_trigger.h.diff?r1=1.20&r2=1.21)
        pg_type.h (r1.158 -> r1.159)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_type.h.diff?r1=1.158&r2=1.159)
    pgsql/src/include/utils:
        array.h (r1.53 -> r1.54)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/array.h.diff?r1=1.53&r2=1.54)
        builtins.h (r1.253 -> r1.254)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/builtins.h.diff?r1=1.253&r2=1.254)
        lsyscache.h (r1.94 -> r1.95)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/lsyscache.h.diff?r1=1.94&r2=1.95)
        rel.h (r1.82 -> r1.83)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/rel.h.diff?r1=1.82&r2=1.83)
        syscache.h (r1.58 -> r1.59)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/syscache.h.diff?r1=1.58&r2=1.59)
    pgsql/src/pl/plperl:
        plperl.c (r1.69 -> r1.70)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/pl/plperl/plperl.c.diff?r1=1.69&r2=1.70)
    pgsql/src/pl/plpgsql/src:
        pl_comp.c (r1.84 -> r1.85)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_comp.c.diff?r1=1.84&r2=1.85)
        pl_handler.c (r1.24 -> r1.25)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_handler.c.diff?r1=1.24&r2=1.25)
    pgsql/src/pl/plpython:
        plpython.c (r1.59 -> r1.60)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpython/plpython.c.diff?r1=1.59&r2=1.60)
    pgsql/src/pl/tcl:
        pltcl.c (r1.94 -> r1.95)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/pl/tcl/pltcl.c.diff?r1=1.94&r2=1.95)
    pgsql/src/test/regress/expected:
        opr_sanity.out (r1.56 -> r1.57)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/opr_sanity.out.diff?r1=1.56&r2=1.57)
        type_sanity.out (r1.23 -> r1.24)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/type_sanity.out.diff?r1=1.23&r2=1.24)
    pgsql/src/test/regress/sql:
        opr_sanity.sql (r1.45 -> r1.46)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/opr_sanity.sql.diff?r1=1.45&r2=1.46)
        type_sanity.sql (r1.23 -> r1.24)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/type_sanity.sql.diff?r1=1.23&r2=1.24)

pgsql-committers by date

Next:From: Neil ConwayDate: 2005-03-29 02:53:54
Subject: pgsql: Add SPI_getnspname(), including documentation.
Previous:From: User DpageDate: 2005-03-28 21:55:30
Subject: pginstaller - pginst: Fix JDBC filenames.

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group