Lsw_aka_laplace created FLINK-15573:
---------------------------------------
Summary: Let Flink SQL PlannerExpressionParserImpl#FieldRefrence
use Unicode as its default charset
Key: FLINK-15573
URL: https://issues.apache.org/jira/browse/FLINK-15573
Project: Flink
Issue Type: Improvement
Components: Table SQL / Planner
Reporter: Lsw_aka_laplace
Now I am talking about the `PlannerExpressionParserImpl`
For now the fieldRefrence‘s charset is JavaIdentifier,why not change it
to UnicodeIdentifier?
Currently in my team, we do actually have this problem. For instance, data
from Es always contains `@timestamp` field , which can not meet JavaIdentifier.
So what we did is just let the fieldRefrence Charset use Unicode
{code:scala}
lazy val extensionIdent: Parser[String] = ( "" ~> // handle whitespace
rep1(acceptIf(Character.isUnicodeIdentifierStart)("identifier expected but '" +
_ + "' found"), elem("identifier part", Character.isUnicodeIdentifierPart(:
Char))) ^^ (.mkString) )
lazy val fieldReference: PackratParser[UnresolvedReferenceExpression] = (STAR
| ident | extensionIdent) ^^ { sym => unresolvedRef(sym) }{code}
It is simple but really make sense~
Looking forward for any opinion
--
This message was sent by Atlassian Jira
(v8.3.4#803005)