TIME datatype is not supported
(MCOL-392)
|
|
| Status: | Closed |
| Project: | MariaDB ColumnStore |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 1.2.0 |
| Type: | Sub-Task | Priority: | Major |
| Reporter: | Daniel Lee (Inactive) | Assignee: | Daniel Lee (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Sprint: | 2018-08, 2018-09, 2018-10, 2018-11, 2018-12, 2018-13, 2018-14, 2018-15, 2018-16, 2018-17, 2018-18 | ||||||||
| Description |
|
Both NULL and empty indicator values are saturated to -838:59:59. They should be saturated to 00:00:00, as LDI does since these values are invalid TIME values. |
| Comments |
| Comment by Andrew Hutchings (Inactive) [ 2018-06-07 ] |
|
Added to a bunch of upcoming |
| Comment by Andrew Hutchings (Inactive) [ 2018-06-07 ] |
|
Pull request in engine to cover this. |
| Comment by Daniel Lee (Inactive) [ 2018-06-18 ] |
|
Build tested: 1.2.0-1 source /root/columnstore/mariadb-columnstore-server Merge pull request #119 from mariadb-corporation/1.1-merge-up-20180531 Merge develop-1.1 into develop /root/columnstore/mariadb-columnstore-server/mariadb-columnstore-engine Merge pull request #494 from mariadb-corporation/ Tested cpimport and NULL value and empty row indicators are still saturated to -838:59:59. I used the following values for the indicators. Are they correct? NULL value = -2047_4095:255:255.16777215 |
| Comment by Andrew Hutchings (Inactive) [ 2018-06-19 ] |
|
If you used the word NULL without setting cpimport -n1 then that is correct. Empty values are NULL. What is an empty row indicator? |
| Comment by Andrew Hutchings (Inactive) [ 2018-06-19 ] |
|
Also, both the values you gave there will be saturated to -838:59:59. |
| Comment by Andrew Hutchings (Inactive) [ 2018-06-19 ] |
|
ok, so, lots to break down here... When I said "-2047 4095:255:255.16777215" I mentioned it was purely theoretical and not a valid input, it fails several immediate sanity checks. There is no physical way for you to enter the stored NULL and empty values for the TIME data type. Now, with your input ('-2047_4095:255:255.16777215') MariaDB will interpret this as an attempt to input the integer -2047 which translates into -00:20:47. This is normal behaviour since MariaDB allows integer representations of datetime/time. cpimport is traditionally stricter with inputs than MariaDB. It will see this as an attempt to input -2047 hours and abort with the saturation at that point. If we want the same behaviour as MariaDB it should also be implemented for DATETIME too. Which puts it out of scope for this work. |
| Comment by Daniel Lee (Inactive) [ 2018-06-19 ] |
|
The issue is in cpimport, not the implementation of the TIME data type. |