diff options
author | Mattias Jonsson <mattias.jonsson@sun.com> | 2009-08-26 14:40:18 +0200 |
---|---|---|
committer | Mattias Jonsson <mattias.jonsson@sun.com> | 2009-08-26 14:40:18 +0200 |
commit | 0000c9417aa7730188a1be2bbe5951c9b581f5c5 (patch) | |
tree | 192823baa4a5f59da2462d54efac4b4cc571af44 /sql/item.h | |
parent | fc3945950452a12ea7e47c685a73d5d22d338ec2 (diff) | |
parent | 67214ef4334deccdd1f1d89c49c4edecd9075962 (diff) | |
download | mariadb-git-0000c9417aa7730188a1be2bbe5951c9b581f5c5.tar.gz |
merge
Diffstat (limited to 'sql/item.h')
-rw-r--r-- | sql/item.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sql/item.h b/sql/item.h index 464085cb101..808e2370b1e 100644 --- a/sql/item.h +++ b/sql/item.h @@ -397,13 +397,20 @@ public: from INT_RESULT, may be NULL, or are unsigned. It will be possible to address this issue once the related partitioning bugs (BUG#16002, BUG#15447, BUG#13436) are fixed. + + The NOT_NULL enums are used in TO_DAYS, since TO_DAYS('2001-00-00') returns + NULL which puts those rows into the NULL partition, but + '2000-12-31' < '2001-00-00' < '2001-01-01'. So special handling is needed + for this (see Bug#20577). */ typedef enum monotonicity_info { NON_MONOTONIC, /* none of the below holds */ MONOTONIC_INCREASING, /* F() is unary and (x < y) => (F(x) <= F(y)) */ - MONOTONIC_STRICT_INCREASING /* F() is unary and (x < y) => (F(x) < F(y)) */ + MONOTONIC_INCREASING_NOT_NULL, /* But only for valid/real x and y */ + MONOTONIC_STRICT_INCREASING,/* F() is unary and (x < y) => (F(x) < F(y)) */ + MONOTONIC_STRICT_INCREASING_NOT_NULL /* But only for valid/real x and y */ } enum_monotonicity_info; /*************************************************************************/ |