[ 
https://issues.apache.org/jira/browse/IGNITE-18645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Maksim Zhuravkov updated IGNITE-18645:
--------------------------------------
    Description: 
Current implementation of dynamic parameters does not allow to reject plans 
that may fail runtime. Solution:
 * dynamic parameters can be casted to appropriate types depending on the 
current context. If E1 with operand O1 expects a type T1 dynamic parameter D1 
must be explicitly casted to T1 if it is possible. And if a cast is not 
possible a query must be rejected.
 * in order to make type inference/type coercion possible we should use types 
of concrete values of dynamic parameters specified with a query.

This is a topic for discussion and investigation.

  was:
Current implementation of dynamic parameters does not allow to reject plans 
that may fail runtime. Solution:
 * dynamic parameters can be casted to appropriate types depending on the 
current context. If E1 with operand O1 expects a type T1 dynamic parameter D1 
must be explicitly casted T1 if it possible if a cast is not possible a query 
must be rejected.
 * in order to make type inference/type coercion possible we should use types 
of concrete values of dynamic parameters specified with a query.

This is a topic for discussion and investigation.


> Sql. Type System. Reject plans with not matching dynamic parameters types 
> during query validation.
> --------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-18645
>                 URL: https://issues.apache.org/jira/browse/IGNITE-18645
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Maksim Zhuravkov
>            Priority: Major
>              Labels: calcite2-required, calcite3-required, ignite-3
>             Fix For: 3.0.0-beta2
>
>
> Current implementation of dynamic parameters does not allow to reject plans 
> that may fail runtime. Solution:
>  * dynamic parameters can be casted to appropriate types depending on the 
> current context. If E1 with operand O1 expects a type T1 dynamic parameter D1 
> must be explicitly casted to T1 if it is possible. And if a cast is not 
> possible a query must be rejected.
>  * in order to make type inference/type coercion possible we should use types 
> of concrete values of dynamic parameters specified with a query.
> This is a topic for discussion and investigation.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to