[fix](function) stddev with DecimalV2 type will result in an error (#… (#39072)
…38731) https://github.com/apache/doris/pull/38731 The stddev function has a separate implementation for the DecimalV2 type, but there are issues with the implementation. Given that there is almost no existing data for DecimalV2, it will be removed here. For be, upgrading to this situation will result in an error directly. ``` SELECT STDDEV(data) FROM DECIMALV2_10_0_DATA; ERROR 1105 (HY000): errCode = 2, detailMessage = (127.0.0.1)[INTERNAL_ERROR]Agg Function stddev(decimal(10,0)) is not implemented ``` After removing DecimalV2, parameters of type DecimalV2 will be converted to double for calculations. ## Proposed changes Issue Number: close #xxx <!--Describe your changes.-->
This commit is contained in:
@ -24,7 +24,6 @@ import org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSi
|
||||
import org.apache.doris.nereids.trees.expressions.shape.UnaryExpression;
|
||||
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
|
||||
import org.apache.doris.nereids.types.BigIntType;
|
||||
import org.apache.doris.nereids.types.DecimalV2Type;
|
||||
import org.apache.doris.nereids.types.DoubleType;
|
||||
import org.apache.doris.nereids.types.FloatType;
|
||||
import org.apache.doris.nereids.types.IntegerType;
|
||||
@ -49,9 +48,7 @@ public class Stddev extends NullableAggregateFunction
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(SmallIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(IntegerType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(BigIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE),
|
||||
FunctionSignature.ret(DecimalV2Type.SYSTEM_DEFAULT).args(DecimalV2Type.SYSTEM_DEFAULT)
|
||||
);
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE));
|
||||
|
||||
/**
|
||||
* constructor with 1 argument.
|
||||
|
||||
@ -25,7 +25,6 @@ import org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSi
|
||||
import org.apache.doris.nereids.trees.expressions.shape.UnaryExpression;
|
||||
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
|
||||
import org.apache.doris.nereids.types.BigIntType;
|
||||
import org.apache.doris.nereids.types.DecimalV2Type;
|
||||
import org.apache.doris.nereids.types.DoubleType;
|
||||
import org.apache.doris.nereids.types.FloatType;
|
||||
import org.apache.doris.nereids.types.IntegerType;
|
||||
@ -50,9 +49,7 @@ public class StddevSamp extends AggregateFunction
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(SmallIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(IntegerType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(BigIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE),
|
||||
FunctionSignature.ret(DecimalV2Type.SYSTEM_DEFAULT).args(DecimalV2Type.SYSTEM_DEFAULT)
|
||||
);
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE));
|
||||
|
||||
/**
|
||||
* constructor with 1 argument.
|
||||
|
||||
@ -24,7 +24,6 @@ import org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSi
|
||||
import org.apache.doris.nereids.trees.expressions.shape.UnaryExpression;
|
||||
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
|
||||
import org.apache.doris.nereids.types.BigIntType;
|
||||
import org.apache.doris.nereids.types.DecimalV2Type;
|
||||
import org.apache.doris.nereids.types.DoubleType;
|
||||
import org.apache.doris.nereids.types.FloatType;
|
||||
import org.apache.doris.nereids.types.IntegerType;
|
||||
@ -49,9 +48,7 @@ public class Variance extends NullableAggregateFunction
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(SmallIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(IntegerType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(BigIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE),
|
||||
FunctionSignature.ret(DecimalV2Type.SYSTEM_DEFAULT).args(DecimalV2Type.SYSTEM_DEFAULT)
|
||||
);
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE));
|
||||
|
||||
/**
|
||||
* constructor with 1 argument.
|
||||
|
||||
@ -24,7 +24,6 @@ import org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSi
|
||||
import org.apache.doris.nereids.trees.expressions.shape.UnaryExpression;
|
||||
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
|
||||
import org.apache.doris.nereids.types.BigIntType;
|
||||
import org.apache.doris.nereids.types.DecimalV2Type;
|
||||
import org.apache.doris.nereids.types.DoubleType;
|
||||
import org.apache.doris.nereids.types.FloatType;
|
||||
import org.apache.doris.nereids.types.IntegerType;
|
||||
@ -49,9 +48,7 @@ public class VarianceSamp extends AggregateFunction
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(SmallIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(IntegerType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(BigIntType.INSTANCE),
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE),
|
||||
FunctionSignature.ret(DecimalV2Type.SYSTEM_DEFAULT).args(DecimalV2Type.SYSTEM_DEFAULT)
|
||||
);
|
||||
FunctionSignature.ret(DoubleType.INSTANCE).args(FloatType.INSTANCE));
|
||||
|
||||
/**
|
||||
* constructor with 1 argument.
|
||||
|
||||
Reference in New Issue
Block a user