[ 
https://issues.apache.org/jira/browse/HIVE-521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12717196#action_12717196
 ] 

Zheng Shao commented on HIVE-521:
---------------------------------

@HIVE-521-all-v1.patch
Almost perfect now. Some minor issues:
1. getDisplayString for "null" and "is not null" does not include the display 
string for any children.
2. for both "null" and "is not null" (and maybe others), please put "assert" on 
the size of the parameter when appropriate
3. I think
{code}
    public static void registerGenericUDF(String functionName, Class<? extends 
GenericUDF> genericUDFClass);
{code}
is good enough. We don't need the other 2 newly added registerGenericUDF 
functions because genericUDF constructs the display string by itself (so there 
is no need for OPType and isOperator).
What do you think? If you agree, let's do:
{code}
+    registerGenericUDF("isnull", GenericUDFOPNull.class);
+    registerGenericUDF("isnotnull", GenericUDFOPNotNull.class);
+    registerGenericUDF("if", GenericUDFIf.class);
{code}


> Move size, if, isnull, isnotnull to GenericUDF
> ----------------------------------------------
>
>                 Key: HIVE-521
>                 URL: https://issues.apache.org/jira/browse/HIVE-521
>             Project: Hadoop Hive
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Zheng Shao
>            Assignee: Min Zhou
>             Fix For: 0.4.0
>
>         Attachments: HIVE-521-all-v1.patch, HIVE-521-IF-2.patch, 
> HIVE-521-IF-3.patch, HIVE-521-IF-4.patch, HIVE-521-IF-5.patch, 
> HIVE-521-IF.patch
>
>
> See HIVE-511 for an example of the move.
> size, if, isnull, isnotnull are all implemented with UDF but they are 
> actually working on variable types of objects. We should move them to 
> GenericUDF for better type handling.
> This also helps to clean up the hack in doing type matching/type conversion 
> in UDF.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to