Martijn van Oosterhout <kleptog@svana.org> writes:
> You also took care of my next idea, which was to allow IS NULL in the index
> predicate.
No I didn't ... or at least, you can build such an index, but you can't
*do* much of anything useful with it. The indxpath.c
predicate-implication code needs work to understand IS NULL and friends
as well as plain operator expressions. Feel free to hack on it.
> diff -u -r1.91 nodes.h
> --- src/include/nodes/nodes.h 2001/06/19 22:39:12 1.91
> +++ src/include/nodes/nodes.h 2001/07/16 09:35:35
> @@ -158,7 +158,6 @@
> T_DropStmt,
> T_TruncateStmt,
> T_CommentStmt,
> - T_ExtendStmt,
> T_FetchStmt,
> T_IndexStmt,
> T_ProcedureStmt,
This is not good --- we try to avoid renumbering existing node types.
(Not for any essential reason, perhaps, but why risk breaking anything?)
My practice when removing a node type is to change the nodes.h entry
like this:
T_RemoveOperStmt,
T_RemoveStmt_XXX, /* not used anymore; tag# available */
T_RenameStmt,
Adding the _XXX is sufficient to ensure that any missed uses of the
typecode in the source will yield compile errors.
Otherwise it looks OK.
regards, tom lane