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

Min Zhou commented on HIVE-521:
-------------------------------

Thanks, Zheng

1. Do you mean queries like below ? 
  select if(true, null , null) from tbl
I believe GenericUDFWhen also has that problem, try
  select case when true then null else null end from tbl
2. Some excpetion throws when initializing actually is not a type exception, 
but an exception on arguments' length.  Signature for method initialize() is 
not fit for every situation, I think.
 public ObjectInspector initialize(ObjectInspector[] arguments)
      throws UDFArgumentTypeException;
3. please check https://issues.apache.org/jira/browse/HIVE-512, I thought there 
are more inconvenience in GenericUDF.

> 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-IF-2.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