]> granicus.if.org Git - postgresql/commit
Hi all,
authorBruce Momjian <bruce@momjian.us>
Fri, 28 Aug 1998 03:36:31 +0000 (03:36 +0000)
committerBruce Momjian <bruce@momjian.us>
Fri, 28 Aug 1998 03:36:31 +0000 (03:36 +0000)
commita53ea467e10688a62cbf43d7bd9929f22932f9c4
tree829b2857d9fbe5adf3cc2d599434f2a8dd4dbd34
parent602ac52d3ee453158c16b655835379c9a110f095
Hi all,

    I  don't know if this is really related to the initdb problem
    discussion (haven't followed it enough). But seems so because
    it  fixes  a  damn  problem  during  index tuple insertion on
    CREATE TABLE into pg_attribute_relid_attnum_index.

    Anyway - this bug was really hard to find. During startup the
    relcache  reads  in  some  prepared  information  about index
    strategies from a file and then  reinitializes  the  function
    pointers  inside  the  scanKey data.  But for sake it assumed
    single attribute index tuples (hasn't that changed recently).
    Thus not all the strategies scanKey entries where initialized
    properly,  resulting  in  invalid  addresses  for  the  btree
    comparision functions.

    With  the  patch  at  the  end  the  regression  tests passed
    excellent except for the sanity_check that crashed at  vacuum
    and the misc test where the select unique1 from onek2 outputs
    the two rows in different order.

Jan
src/backend/catalog/index.c
src/backend/commands/vacuum.c
src/backend/utils/cache/relcache.c
src/bin/psql/psqlHelp.h