You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Timo Walther (JIRA)" <ji...@apache.org> on 2017/05/22 17:04:04 UTC
[jira] [Resolved] (FLINK-6632) Fix parameter case sensitive error
for test passing/rejecting filter API
[ https://issues.apache.org/jira/browse/FLINK-6632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Timo Walther resolved FLINK-6632.
---------------------------------
Resolution: Fixed
Fix Version/s: 1.4.0
1.3.0
Fixed in 1.4: 9a9e193a1edf335c89804dc3643fc02681570821
Fixed in 1.3: 95fce15483fe6b12adc465a0b709362b8ea7fd0c
> Fix parameter case sensitive error for test passing/rejecting filter API
> ------------------------------------------------------------------------
>
> Key: FLINK-6632
> URL: https://issues.apache.org/jira/browse/FLINK-6632
> Project: Flink
> Issue Type: Sub-task
> Components: Table API & SQL
> Reporter: sunjincheng
> Assignee: sunjincheng
> Fix For: 1.3.0, 1.4.0
>
>
> TableAPI {{testAllPassingFilter}}:
> {code}
> val t = util.addTable[(Int, Long, String)]('int, 'long, 'string)
> val resScala = t.filter(Literal(true)).select('int as 'myInt, 'string)
> val resJava = t.filter("TrUe").select("int as myInt, string")
> {code}
> We got error:
> {code}
> org.apache.flink.table.api.ValidationException: Cannot resolve [TrUe] given input [int, long, string].
> {code}
> The error is caused by :
> {code}
> lazy val boolLiteral: PackratParser[Expression] = ("true" | "false") ^^ {
> str => Literal(str.toBoolean)
> }
> {code}
> I want improve the method as follow:
> {code}
> lazy val boolLiteral: PackratParser[Expression] =
> ("(t|T)(r|R)(u|U)(e|E)".r | "(f|F)(a|A)(l|L)(s|S)(e|E)".r) ^^ { str => Literal(str.toBoolean)}
> {code}
> Is there any drawback to this improvement? Welcome anyone feedback ?
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)