Daniel Barclay (Drill) created DRILL-2682:
---------------------------------------------

             Summary: SQL type syntax "FLOAT(30)" yields AssertionError
                 Key: DRILL-2682
                 URL: https://issues.apache.org/jira/browse/DRILL-2682
             Project: Apache Drill
          Issue Type: Bug
            Reporter: Daniel Barclay (Drill)


Trying to use the syntax "FLOAT(30)" (to request an approximate numeric type 
(floating-point type) with at least 30 bits of precision (Drill's 
double-precision floating-point type)) fails with an assertion error:

> SELECT CAST( 0 AS FLOAT(30) ) FROM INFORMATION_SCHEMA.CATALOGS;
Query failed: AssertionError: 

Error: exception while executing query: Failure while executing query. 
(state=,code=0)
>

1. Drill should not throw an AssertionError (at least not one without some 
interim "not implemented yet" or "not supported" text) for this.

2. If Drill really chooses not to support this, it should give a more direct 
"not supported" error.  

(Note that support should be simple:
- If the expression value is in the range from 25 through 53 (the number of 
bits of precision in IEEE 754 double precision, Java double, and Drill internal 
type FLOAT8, then use FLOAT8.
- Otherwise, if the expression value is in the range from 0 through 24 (the 
number of bits of precision in IEEE 754 single precision, Java float, and Drill 
internal type FLOAT4), then use FLOAT4 or FLOAT8.
- Otherwise, report the appropriate error (the requested precision is greater 
than implementation-defined maximum precision, the precision is value is 
negative, or the precision expression couldn't be evaluated).)

3.  Drill should support this at least eventually.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to