]> granicus.if.org Git - postgresql/commitdiff
Improve comment.
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 9 Jan 2011 20:24:22 +0000 (15:24 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 9 Jan 2011 20:25:17 +0000 (15:25 -0500)
contrib/btree_gin/btree_gin.c

index f8fae18eaf282521784fe01fd6db67c38cb1afdd..486a662c780cc3bec3493cc3779053bf9cac0039 100644 (file)
@@ -394,10 +394,11 @@ static TypeInfo TypeInfo_varbit = {true, leftmostvalue_varbit, bitcmp};
 GIN_SUPPORT(varbit)
 
 /*
- * Numeric type hasn't applicable left-most value, so NULL
- * is used for that. NULL will never be an argument for a C-level
- * numeric function except gin_numeric_cmp and it will not be stored
- * somewhere and it could not be returned in any user SQL query.
+ * Numeric type hasn't a real left-most value, so we use PointerGetDatum(NULL)
+ * (*not* a SQL NULL) to represent that.  We can get away with that because
+ * the value returned by our leftmostvalue function will never be stored in
+ * the index nor passed to anything except our compare and prefix-comparison
+ * functions.  The same trick could be used for other pass-by-reference types.
  */
 
 #define NUMERIC_IS_LEFTMOST(x) ((x) == NULL)