Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
While inferring the return type of the item operator (SqlItemOperator. inferReturnType()) when the SqlTypeName of the operand is ANY we set the nullability of return type to be false. Since the type of the operand is not known at this point we cannot know the return type and its nullability.
Setting nullability to false was causing wrong results in Drill when we were performing count(item op), Calcite would set nullability to be false and the count(item op) would get replaced with count(0) causing wrong results if the column is eventually resolved to be nullable and has nulls in it.