Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
vectorization-branch
-
None
-
Fix the NULL serialization and record separator insertion for VectorizedRowBatch.toString()
Description
Queries of type timestamp on partitioned tables return NULL for all rows of timestamp columns, if the first row in the column is NULL.
This was tracked down to the failure of timestamp columns to parse the map output properly, which was due to differing format from the unvectorized code's output.
The output file for vectorized code says
(null)^A
2013-02-12 21:05:29^A
Where the unvectorized code outputs
\N 2013-02-12 21:05:29
The vectorized code passes on the "(null)" string to the LazyTimestamp parser, which fails to parse it & returns "NULL", but slowed down massively by the IllegalArgumentException.
And the extraneous ^A prevents the actual Timestamp from being parsed into valid timestamps.