----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/18047/#review34564 -----------------------------------------------------------
Ship it! - Mehant Baid On Feb. 13, 2014, 2:20 a.m., Jinfeng Ni wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/18047/ > ----------------------------------------------------------- > > (Updated Feb. 13, 2014, 2:20 a.m.) > > > Review request for drill. > > > Repository: drill-git > > > Description > ------- > > The patch is to fix the problem related to output type determiner for cast > functions. Previously, cast function's definition uses a fixed type > determiner, which is always non-nullable. However, when the input is of > nullable type, even though cast's implementation is null_if_null, the output > type is still non-nullable, which causes the compilation error reported in > Drill-364. > > To fix this, introduce a NullIfNullType output type determiner. It will take > a minorType. If any of the argument is null, then it will return a nullable > type, otherwise return a non-nullable type. > > Also, fix a minor bug in cast function when target is int type. > > > Diffs > ----- > > > common/src/main/java/org/apache/drill/common/expression/OutputTypeDeterminer.java > 66523c4 > > common/src/main/java/org/apache/drill/common/expression/fn/CastFunctionDefs.java > 6a98f94 > exec/java-exec/src/main/codegen/data/Casts.tdd ceb9cde > > exec/java-exec/src/test/java/org/apache/drill/exec/physical/impl/TestCastFunctions.java > 3010c37 > exec/java-exec/src/test/resources/functions/cast/testCastVarCharNull.json > PRE-CREATION > exec/java-exec/src/test/resources/jsoninput/input1.json PRE-CREATION > > Diff: https://reviews.apache.org/r/18047/diff/ > > > Testing > ------- > > Add a junit test case and read data from a json file. Test cast from nullable > int to varchar, and from nullable float to varchar. > > > Thanks, > > Jinfeng Ni > >
