You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "Yuan Tian (Jira)" <ji...@apache.org> on 2022/11/29 01:52:00 UTC
[jira] [Assigned] (IOTDB-4976) [UDF]no error return when the datatype of input timeseries and the UDF are not match in nested query
[ https://issues.apache.org/jira/browse/IOTDB-4976?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yuan Tian reassigned IOTDB-4976:
--------------------------------
Assignee: liaolanyu (was: Yuan Tian)
> [UDF]no error return when the datatype of input timeseries and the UDF are not match in nested query
> ----------------------------------------------------------------------------------------------------
>
> Key: IOTDB-4976
> URL: https://issues.apache.org/jira/browse/IOTDB-4976
> Project: Apache IoTDB
> Issue Type: Improvement
> Reporter: changxue
> Assignee: liaolanyu
> Priority: Minor
>
> [UDF]no error return when the datatype of input timeseries and the UDF are not match in nested query
> description:
> my_max is a function of getting the max value of int values and only processing int value.
> my_sum is a function equals the native function of sum, it outputs double value.
> when the double result of my_sum is given to my_max as inputing value, it would be error in method transform or terminate. But the exception may be catched, the logs of datanode show nothing. *That's the problem.* It's not convenient to find the reason for users.
>
> reproduction:
> {code:sql}
> create database root.udf.non_aligned;
> create timeseries root.udf.non_aligned.cl01.temp with datatype=int32;
> create timeseries root.udf.non_aligned.cl01.pressure with datatype=int32;
> insert into root.udf.non_aligned.cl01(time, temp,pressure) values (1, 1850, 1800), (3, 2600, 2600), (4, 2300,null),(5, null, 4800),(6, 3500,2300);
> CREATE FUNCTION my_max AS 'Max';
> CREATE FUNCTION my_sum AS "com.timecho.udf.normal.MySum";
> -- this would return 0
> select my_max(my_sum(temp)) from root.udf.non_aligned.cl01;{code}
> messages:
> {code:sql}
> IoTDB> select my_max(my_sum(temp)) from root.udf.non_aligned.cl01;
> +-----------------------------+----------------------------------------------+
> | Time|my_max(my_sum(root.udf.non_aligned.cl01.temp))|
> +-----------------------------+----------------------------------------------+
> |1970-01-01T08:00:00.001+08:00| 0|
> +-----------------------------+----------------------------------------------+
> Total line number = 1
> It costs 0.163s
> IoTDB> select my_sum(temp) from root.udf.non_aligned.cl01;
> +-----------------------------+--------------------------------------+
> | Time|my_sum(root.udf.non_aligned.cl01.temp)|
> +-----------------------------+--------------------------------------+
> |1970-01-01T08:00:00.001+08:00| 10250.0|
> +-----------------------------+--------------------------------------+
> Total line number = 1
> It costs 0.018s {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)