Make 'col IS NULL' clauses be indexable conditions.
Tom Lane <tgl@sss.pgh.pa.us>
Make 'col IS NULL' clauses be indexable conditions. Teodor Sigaev, with some kibitzing from Tom Lane.
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/catalogs.sgml | modified | +8 −1 |
| doc/src/sgml/indexam.sgml | modified | +5 −2 |
| doc/src/sgml/indices.sgml | modified | +9 −5 |
| doc/src/sgml/ref/create_index.sgml | modified | +1 −7 |
| src/backend/access/common/scankey.c | modified | +10 −3 |
| src/backend/access/gist/gistget.c | modified | +33 −25 |
| src/backend/access/nbtree/nbtsearch.c | modified | +1 −3 |
| src/backend/access/nbtree/nbtutils.c | modified | +77 −16 |
| src/backend/executor/nodeIndexscan.c | modified | +36 −2 |
| src/backend/optimizer/path/indxpath.c | modified | +23 −3 |
| src/backend/optimizer/plan/createplan.c | modified | +35 −11 |
| src/backend/optimizer/util/plancat.c | modified | +2 −1 |
| src/backend/utils/adt/selfuncs.c | modified | +32 −7 |
| src/include/access/skey.h | modified | +8 −1 |
| src/include/catalog/catversion.h | modified | +2 −2 |
| src/include/catalog/pg_am.h | modified | +23 −21 |
| src/include/nodes/relation.h | modified | +2 −1 |
| src/test/regress/expected/create_index.out | modified | +80 −0 |
| src/test/regress/sql/create_index.sql | modified | +46 −0 |