[
https://issues.apache.org/jira/browse/HIVE-17593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16528362#comment-16528362
]
Junjie Chen commented on HIVE-17593:
------------------------------------
Thanks [~Ferd] to response so quickly.
It depends on how HiveChar defined and used in other place or other format,
Hive should have unified usage on HiveChar. According to
HiveChar/HiveCharWritable definition in HiveChar/HiveCharWriable.java as below:
/**
* HiveChar.
* String values will be padded to full char length.
* Character legnth, comparison, hashCode should ignore trailing spaces.
*/
We can know the original value of HiveChar should include padding spaces. So in
ConvertAstToSearchArg.java#boxLiteral return padding value.
> DataWritableWriter strip spaces for CHAR type before writing, but predicate
> generator doesn't do same thing.
> ------------------------------------------------------------------------------------------------------------
>
> Key: HIVE-17593
> URL: https://issues.apache.org/jira/browse/HIVE-17593
> Project: Hive
> Issue Type: Bug
> Affects Versions: 2.3.0, 3.0.0
> Reporter: Junjie Chen
> Assignee: Junjie Chen
> Priority: Major
> Fix For: 3.1.0
>
> Attachments: HIVE-17593.patch
>
>
> DataWritableWriter strip spaces for CHAR type before writing. While when
> generating predicate, it does NOT do same striping which should cause data
> missing!
> In current version, it doesn't cause data missing since predicate is not well
> push down to parquet due to HIVE-17261.
> Please see ConvertAstTosearchArg.java, getTypes treats CHAR and STRING as
> same which will build a predicate with tail spaces.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)