drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jacques Nadeau (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-594) cast interval as time returns wrong value
Date Sun, 04 Jan 2015 21:28:48 GMT

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

Jacques Nadeau commented on DRILL-594:
--------------------------------------

Should fail rather than return wrong value.

> cast interval as time returns wrong value
> -----------------------------------------
>
>                 Key: DRILL-594
>                 URL: https://issues.apache.org/jira/browse/DRILL-594
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Functions - Drill
>            Reporter: Chun Chang
>            Assignee: Mehant Baid
>            Priority: Critical
>             Fix For: 1.0.0
>
>
> with postgres, the following interval values can all be casted as time:
> foodmart=# select c_row, c_interval, cast(c_interval as time) from data;
>  c_row |              c_interval              |  c_interval
> -------+--------------------------------------+--------------
>      1 | 00:01:00                             | 00:01:00
>      2 | 05:00:00                             | 05:00:00
>      3 | 10 days                              | 00:00:00
>      4 | 34 years                             | 00:00:00
>      5 | 3 mons                               | 00:00:00
>      6 | -00:00:14                            | 23:59:46
>      7 | 1 day 02:03:04                       | 02:03:04
>      8 | 6 years                              | 00:00:00
>      9 | 5 mons                               | 00:00:00
>     10 | 5 mons 12:00:00                      | 12:00:00
>     11 | 01:00:00                             | 01:00:00
>     12 | 02:00:00                             | 02:00:00
>     13 | -08:00:00                            | 16:00:00
>     14 | -1 days +02:03:00                    | 02:03:00
>     15 | -1 days +02:03:00                    | 02:03:00
>     16 | 10 days 12:00:00                     | 12:00:00
>     17 | 1 mon 15 days                        | 00:00:00
>     18 | 9 years 1 mon -12 days +13:14:00     | 13:14:00
>     19 | 3 years 5 mons 12 days 360:00:00     | 00:00:00
>     20 | -3 years -5 mons -12 days +360:00:00 | 00:00:00
>     21 | -12 days                             | 00:00:00
>     22 | 9 mons -27 days +12:34:56            | 12:34:56
>     23 | -3 years +482 days 76:54:32.189      | 04:54:32.189
> (23 rows)
> foodmart=# select c_row, cast(c_interval as varchar(20)), cast(c_interval as time) from
data where c_row < 3;
>  c_row | c_interval | c_interval
> -------+------------+------------
>      1 | 00:01:00   | 00:01:00
>      2 | 05:00:00   | 05:00:00
> (2 rows)
> with Drill, we either return a wrong value or fail all together depends on the interval
value:
> 0: jdbc:drill:schema=dfs> select c_row, cast(c_interval as varchar(20)), cast(c_interval
as time) from data where c_row < 3;
> +------------+------------+------------+
> |   c_row    |   EXPR$1   |   EXPR$2   |
> +------------+------------+------------+
> | 1          | 00:01:00   | 00:00:00   |
> | 2          | 05:00:00   | 00:00:00   |
> +------------+------------+------------+
> 2 rows selected (0.185 seconds)
> 0: jdbc:drill:schema=dfs> select c_row, c_interval, cast(c_interval as time) from
data;
> Query failed: org.apache.drill.exec.rpc.RpcException: Remote failure while running query.[error_id:
"be935b5c-e1b8-4b5d-9ffa-c1ecd3f4fe7f"
> endpoint {
>   address: "qa-node119.qa.lab"
>   user_port: 31010
>   control_port: 31011
>   data_port: 31012
> }
> error_type: 0
> message: "Failure while running fragment. < IllegalArgumentException:[ Invalid format:
\"10 days\" is malformed at \" days\" ]"
> ]
> Error: exception while executing query (state=,code=0)



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

Mime
View raw message