hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Edward Capriolo (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-5203) FunctionRegistry.getMethodInternal() should prefer method arguments with closer affinity to the original argument types
Date Wed, 04 Sep 2013 15:03:52 GMT

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

Edward Capriolo commented on HIVE-5203:
---------------------------------------

I have a couple more things I think we should do first.

{code}
  for (Method m: udfMethods) {
+        currentScore = 0;
+        List<TypeInfo> argumentsAccepted =
+            TypeInfoUtils.getParameterTypeInfos(m, argumentsPassed.size());
+        Iterator<TypeInfo> argsPassedIter = argumentsPassed.iterator();
{code}

Especially this one. We are addign a public method we should have tests around it to document
its functionality. java doc would be nice to.
{code}
  public static PrimitiveGrouping getPrimitiveGrouping(PrimitiveCategory primitiveCategory)
{
+    switch (primitiveCategory) {
{public}
                
> FunctionRegistry.getMethodInternal() should prefer method arguments with closer affinity
to the original argument types
> -----------------------------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-5203
>                 URL: https://issues.apache.org/jira/browse/HIVE-5203
>             Project: Hive
>          Issue Type: Bug
>          Components: Types, UDF
>            Reporter: Jason Dere
>            Assignee: Jason Dere
>         Attachments: HIVE-5203.1.patch
>
>
> When the function registry is trying to determine the best version of UDF evaluate()
to use based on a set of arguments passed in, it should prefer methods where the argument
types are more related to the original types. For example if varchar is used with UDFFromUnixTime(),
varchar is convertible to both the double and string versions of evaluate() for that UDF.
 In this case we would prefer that the function registry select the string version over the
double version, since varchar and string are both string types.
> This doesn't really affect any of the existing types, but comes into play with the addition
of the varchar type (HIVE-4844).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message