]> git.ipfire.org Git - thirdparty/postgresql.git/commit
More btree fixes from Massimo Dal Zotto <dz@cs.unitn.it>
authorMarc G. Fournier <scrappy@hub.org>
Wed, 30 Oct 1996 06:06:50 +0000 (06:06 +0000)
committerMarc G. Fournier <scrappy@hub.org>
Wed, 30 Oct 1996 06:06:50 +0000 (06:06 +0000)
commit025709640c48fa5906fa90dcf09f4ae711703ccb
tree87042961d8acfc9b4dd6800f8950e93412946459
parent65e5e59f8379ed367ed6100424bd34a569d099f3
More btree fixes from Massimo Dal Zotto <dz@cs.unitn.it>

Fixes:

I found another bug in btree index.  Looking at the code it seems that NULL
keys are never used to build or scan a btree index (see the explain commands
in the example).  However this is not the case when a null key is retrieved
in an outer loop of a join select and used in an index scan of an inner loop.
This bug causes at least three kinds of problems:

1)  the backend crashes when it tries to compare a text string with a null.

2)  it is not possible to find tuples with null keys in a join.

3)  null is considered equal to 0 when the datum is passed by value, see
    the last query.
src/backend/access/common/heapvalid.c
src/backend/access/common/indexvalid.c
src/backend/access/nbtree/nbtsearch.c
src/backend/executor/nodeIndexscan.c