OSDN Git Service

Restore correct btree preprocessing of "indexedcol IS NULL" conditions.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 29 Jun 2011 23:46:47 +0000 (19:46 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 29 Jun 2011 23:46:47 +0000 (19:46 -0400)
commita5652d3e05380edcd35236e94b924c8c105eaefd
tree55a1000384869836f18e1236feb3f7477c05db3e
parentcd70dd6bef515a573a5af1756ce6a8b8406bb5d4
Restore correct btree preprocessing of "indexedcol IS NULL" conditions.

Such a condition is unsatisfiable in combination with any other type of
btree-indexable condition (since we assume btree operators are always
strict).  8.3 and 8.4 had an explicit test for this, which I removed in
commit 29c4ad98293e3c5cb3fcdd413a3f4904efff8762, mistakenly thinking that
the case would be subsumed by the more general handling of IS (NOT) NULL
added in that patch.  Put it back, and improve the comments about it, and
add a regression test case.

Per bug #6079 from Renat Nasyrov, and analysis by Dean Rasheed.
src/backend/access/nbtree/nbtutils.c
src/test/regress/expected/create_index.out
src/test/regress/sql/create_index.sql