You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Wenchen Fan (Jira)" <ji...@apache.org> on 2022/04/18 15:21:00 UTC

[jira] [Assigned] (SPARK-37643) when charVarcharAsString is true, char datatype partition table query incorrect

     [ https://issues.apache.org/jira/browse/SPARK-37643?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Wenchen Fan reassigned SPARK-37643:
-----------------------------------

    Assignee: YuanGuanhu

> when charVarcharAsString is true, char datatype partition table query incorrect
> -------------------------------------------------------------------------------
>
>                 Key: SPARK-37643
>                 URL: https://issues.apache.org/jira/browse/SPARK-37643
>             Project: Spark
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 3.1.2, 3.2.0
>         Environment: spark 3.2.0
>            Reporter: YuanGuanhu
>            Assignee: YuanGuanhu
>            Priority: Major
>
> This ticket aim at fixing the bug that does not apply right-padding for char types column when charVarcharAsString is true and partition data length is less than defined length.
> For example, a query below returns nothing in master, but a correct result is `abc`.
> {code:java}
> scala> sql("set spark.sql.legacy.charVarcharAsString=true")
> scala> sql("CREATE TABLE tb01(i string, c char(5)) USING parquet partitioned by (c)")
> scala> sql("INSERT INTO tb01 values(1, 'abc')")
> scala> sql("select c from tb01 where c = 'abc'").show
> +---+
> |  c|
> +---+
> +---+{code}
> This is because `ApplyCharTypePadding` rpad the expr to charLength. We should handle this consider conf spark.sql.legacy.charVarcharAsString value.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org