Details
-
Task
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
None
Description
This is a subtask for MDEV-14630, which can be done in a self-contained change.
Item_basic_value has a number of methods:
- is_basic_value(), which tests type() internally.
- null_eq()
- int_eq()
- str_eq()
- real_eq()
It's descendants:
- Item_param
- Item_null
- Item_int
- Item_double
- Item_float
- Item_string
use the mentioned methods in eq().
Additionally, Item_param tests cmp_type(), which is bad for pluggable data types (because constants of different pluggable data types will be able to have the same cmp_type(), but they are not equal to each other).
This task is to change the code to be based on Type_handler methods instead of Item::type() and Item::cmp_type() tests.
Attachments
Issue Links
- blocks
-
MDEV-14630 Replace {STRING|INT|REAL|DECIMAL|DATE}_ITEM to CONST_ITEM
- Closed