[ 
https://issues.apache.org/jira/browse/FLINK-10222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16616459#comment-16616459
 ] 

ASF GitHub Bot commented on FLINK-10222:
----------------------------------------

fhueske commented on a change in pull request #6622: [FLINK-10222] [table] 
Table scalar function expression parses error when function name equals the 
exists keyword suffix
URL: https://github.com/apache/flink/pull/6622#discussion_r217892719
 
 

 ##########
 File path: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/expressions/ExpressionParser.scala
 ##########
 @@ -42,7 +42,8 @@ object ExpressionParser extends JavaTokenParsers with 
PackratParsers {
 
   // Convert the keyword into an case insensitive Parser
   implicit def keyword2Parser(kw: Keyword): Parser[String] = {
-    ("""(?i)\Q""" + kw.key + """\E""").r
+    ("""(?i)\Q""" + kw.key +
+      
"""\E(?![_$a-zA-Z0-9\u005f\u0024\u0061-\u007a\u0041-\u005a\u0030-\u0039])""").r
 
 Review comment:
   I'll replace `a-zA-Z0-9\u005f\u0024\u0061-\u007a\u0041-\u005a\u0030-\u0039` 
by `\p{javaJavaIdentifierPart}` which matches all valid characters of Java 
identifiers.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Table scalar function expression parses error when function name equals the 
> exists keyword suffix
> -------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-10222
>                 URL: https://issues.apache.org/jira/browse/FLINK-10222
>             Project: Flink
>          Issue Type: Bug
>          Components: Table API & SQL
>            Reporter: vinoyang
>            Priority: Major
>              Labels: pull-request-available
>
> Suffix extraction in ExpressionParser.scala does not actually support 
> extraction of keywords with the same prefix. For example: Adding suffix 
> parsing rules for {{a.fun}} and {{a.function}} simultaneously will causes 
> exceptions. 
> some discussion : 
> [https://github.com/apache/flink/pull/6432#issuecomment-416127815]
> https://github.com/apache/flink/pull/6585#discussion_r212797015



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to