pgsql: Concurrency for GiST - full concurrency for - Mailing list pgsql-committers

From teodor@svr1.postgresql.org (Teodor Sigaev)
Subject pgsql: Concurrency for GiST - full concurrency for
Date
Msg-id 20050627124523.6292252813@svr1.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Concurrency for GiST
- full concurrency for insert/update/select/vacuum:
        - select and vacuum never locks more than one page simultaneously
        - select (gettuple) hasn't any lock across it's calls
        - insert never locks more than two page simultaneously:
                - during search of leaf to insert it locks only one page
                  simultaneously
                - while walk upward to the root it locked only parent (may be
                  non-direct parent) and child. One of them X-lock, another may
                  be S- or X-lock
- 'vacuum full' locks index
- improve gistgetmulti
- simplify XLOG records

Fix bug in index_beginscan_internal: LockRelation may clean
  rd_aminfo structure, so move GET_REL_PROCEDURE after LockRelation

Modified Files:
--------------
    pgsql/src/backend/access/gist:
        gist.c (r1.121 -> r1.122)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gist/gist.c.diff?r1=1.121&r2=1.122)
        gistget.c (r1.49 -> r1.50)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gist/gistget.c.diff?r1=1.49&r2=1.50)
        gistscan.c (r1.58 -> r1.59)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gist/gistscan.c.diff?r1=1.58&r2=1.59)
        gistutil.c (r1.2 -> r1.3)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gist/gistutil.c.diff?r1=1.2&r2=1.3)
        gistvacuum.c (r1.2 -> r1.3)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gist/gistvacuum.c.diff?r1=1.2&r2=1.3)
        gistxlog.c (r1.3 -> r1.4)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gist/gistxlog.c.diff?r1=1.3&r2=1.4)
    pgsql/src/backend/access/index:
        indexam.c (r1.83 -> r1.84)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/index/indexam.c.diff?r1=1.83&r2=1.84)
    pgsql/src/include/access:
        gist.h (r1.47 -> r1.48)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/gist.h.diff?r1=1.47&r2=1.48)
        gist_private.h (r1.5 -> r1.6)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/gist_private.h.diff?r1=1.5&r2=1.6)
        gistscan.h (r1.26 -> r1.27)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/gistscan.h.diff?r1=1.26&r2=1.27)
    pgsql/src/include/catalog:
        catversion.h (r1.281 -> r1.282)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.281&r2=1.282)
        pg_am.h (r1.36 -> r1.37)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_am.h.diff?r1=1.36&r2=1.37)

pgsql-committers by date:

Previous
From: applejack@pgfoundry.org (User Applejack)
Date:
Subject: uri - uri: Changed to not install in pg_catalog.
Next
From: andreas@pgfoundry.org (User Andreas)
Date:
Subject: tablelog - tablelog: fix an error (wrong parameter was printed)