[MDEV-11558] Split Item_type_holder::display_length into virtual methods in Type_handler Created: 2016-12-13 Updated: 2017-04-07 Resolved: 2016-12-17 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | OTHER |
| Fix Version/s: | 10.3.0 |
| Type: | Task | Priority: | Major |
| Reporter: | Alexander Barkov | Assignee: | Alexander Barkov |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | datatype | ||
| Issue Links: |
|
||||||||
| Description |
|
The method Item_type_holder::display_length(Item *) has this switch:
This is not friendly to pluggable data types. We'll introduce a new Type_handler virtual method:
and move the pieces from Item_type_holder::display_length(Item *) into implementations of various Type_handler_xxx::max_display_length(). Additionally, instead of doing cast to Item_field:
we'll remove the method Item_type_holder::display_length() and introduce a new virtual method in Item:
Notice the default implementation will use max_display_length() of the underlying data type handler.
|
| Comments |
| Comment by Alexander Barkov [ 2016-12-17 ] |
|
Pushed into bb-10.2-ext |