Steven Talbot created CALCITE-4081:
--------------------------------------

             Summary: Round-tripping a DECIMAL literal through Planner -> 
RelToSqlConverter -> Planner throws validation error
                 Key: CALCITE-4081
                 URL: https://issues.apache.org/jira/browse/CALCITE-4081
             Project: Calcite
          Issue Type: Bug
            Reporter: Steven Talbot


Take the following SQL:
SELECT CAST('11111111111111111111111111111111.111111' AS DECIMAL(38,6)) AS "num"
And, in the default Calcite SQL dialect with all defaults, send it through 
Planner parse -> valiate -> rel to get a RelNode. The RelNode will have a 
Project with the "111111111111111.11111" literal in there as a RexLiteral with 
Decimal type. 

 

The use RelToSqlConverter to convert that RelNode back to SQL. The SQL now 
looks like 
SELECT 11111111111111111111111111111111.111111 AS "num"
 

If you attempt to parse and validate that SQL, you get "Numeric literal 
'11111111111111111111111111111111.111111' out of range" throw by 
SqlValidatorImpl.validateLiteral()



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to