994
994
#define MY_COLL_CMP_CONV 7
998
This enum is used to report information about monotonicity of function
999
represented by Item* tree.
1000
Monotonicity is defined only for Item* trees that represent table
1001
partitioning expressions (i.e. have no subselects/user vars/PS parameters
1002
etc etc). An Item* tree is assumed to have the same monotonicity properties
1003
as its correspoinding function F:
1005
[signed] int64_t F(field1, field2, ...) {
1006
put values of field_i into table record buffer;
1007
return item->val_int();
1011
At the moment function monotonicity is not well defined (and so may be
1012
incorrect) for Item trees with parameters/return types that are different
1013
from INT_RESULT, may be NULL, or are unsigned.
1014
It will be possible to address this issue once the related partitioning bugs
1015
(BUG#16002, BUG#15447, BUG#13436) are fixed.
1018
typedef enum monotonicity_info
1020
NON_MONOTONIC, /* none of the below holds */
1021
MONOTONIC_INCREASING, /* F() is unary and (x < y) => (F(x) <= F(y)) */
1022
MONOTONIC_STRICT_INCREASING /* F() is unary and (x < y) => (F(x) < F(y)) */
1023
} enum_monotonicity_info;
997
1026
#endif /* DRIZZLE_SERVER_DEFINITIONS_H */