[
https://issues.apache.org/jira/browse/IGNITE-22988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Iurii Gerzhedovich updated IGNITE-22988:
----------------------------------------
Description:
We have Map/Reduce and Collocated algorithms of implementations for calculating
average values.
At least for the DECIMAL type we have different implementations which can
produce different precision/scale of results and value of results.
We need to do the following:
1) Check implementations of AVG for all types and align them, including
resolving types of results.
2) The result type of AVG in the plan and the real result type after execution
should be identical.
3) For DECIMAL type, according to SQL 2016 standard, we can return precision
and scale not less than arguments have, so we can agree that return precision
and scale will be not less predefined minimum precision/scale to improve user
experience and give them more accurate results for arguments with small
precision/scale
Points to start investigate:
# ItAggregatesTest
# AccumulatorsFactory
# IgniteSqlFunctions#decimalDivide
# MapReduceAggregates#createAvgAgg
was:
We have Map/Reduce and Collocated algorithms of implementations for calculating
average values.
At least for the DECIMAL type we have different implementations which can
produce different precision/scale of results and value of results.
We need to do the following:
1) Check implementations of AVG for all types and align them, including
resolving types of results.
2) The result type of AVG in the plan and the real result type after execution
should be identical.
3) For DECIMAL type, according to SQL 2016 standard, we can return precision
and scale not less than arguments have, so we can agree that return precision
and scale will be not less predefined minimum precision/scale to improve user
experience and give them more accurate results for arguments with small
precision/scale
Points to start investigate:
# ItAggregatesTest
#
AccumulatorsFactory
# IgniteSqlFunctions#decimalDivide
# MapReduceAggregates#createAvgAgg
> Sql. Align implementations of average calculating (AVG)
> -------------------------------------------------------
>
> Key: IGNITE-22988
> URL: https://issues.apache.org/jira/browse/IGNITE-22988
> Project: Ignite
> Issue Type: Improvement
> Components: sql
> Reporter: Iurii Gerzhedovich
> Priority: Major
> Labels: ignite-3
>
> We have Map/Reduce and Collocated algorithms of implementations for
> calculating average values.
> At least for the DECIMAL type we have different implementations which can
> produce different precision/scale of results and value of results.
> We need to do the following:
> 1) Check implementations of AVG for all types and align them, including
> resolving types of results.
> 2) The result type of AVG in the plan and the real result type after
> execution should be identical.
> 3) For DECIMAL type, according to SQL 2016 standard, we can return precision
> and scale not less than arguments have, so we can agree that return precision
> and scale will be not less predefined minimum precision/scale to improve user
> experience and give them more accurate results for arguments with small
> precision/scale
> Points to start investigate:
> # ItAggregatesTest
> # AccumulatorsFactory
> # IgniteSqlFunctions#decimalDivide
> # MapReduceAggregates#createAvgAgg
--
This message was sent by Atlassian Jira
(v8.20.10#820010)