You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Paul Rogers (JIRA)" <ji...@apache.org> on 2017/03/08 00:45:38 UTC

[jira] [Issue Comment Deleted] (DRILL-5329) External sort does not support "obscure" numeric types

     [ https://issues.apache.org/jira/browse/DRILL-5329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Rogers updated DRILL-5329:
-------------------------------
    Comment: was deleted

(was: Failure for TinyInt:

{code}
ERROR o.a.d.e.e.f.r.RemoteFunctionRegistry - Problem during trying to access remote function registry [registry]
java.lang.NullPointerException: null
	at org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.getRegistryVersion(RemoteFunctionRegistry.java:119) ~[classes/:na]
	at org.apache.drill.exec.expr.fn.FunctionImplementationRegistry.syncWithRemoteRegistry(FunctionImplementationRegistry.java:320) [classes/:na]
	at org.apache.drill.exec.expr.fn.FunctionImplementationRegistry.findDrillFunction(FunctionImplementationRegistry.java:164) [classes/:na]
	at org.apache.drill.exec.expr.ExpressionTreeMaterializer$AbstractMaterializeVisitor.visitFunctionCall(ExpressionTreeMaterializer.java:352) [classes/:na]
	at org.apache.drill.exec.expr.ExpressionTreeMaterializer$AbstractMaterializeVisitor.visitFunctionCall(ExpressionTreeMaterializer.java:1) [classes/:na]
	at org.apache.drill.common.expression.FunctionCall.accept(FunctionCall.java:60) [classes/:na]
	at org.apache.drill.exec.expr.ExpressionTreeMaterializer.materialize(ExpressionTreeMaterializer.java:131) [classes/:na]
	at org.apache.drill.exec.expr.ExpressionTreeMaterializer.materialize(ExpressionTreeMaterializer.java:106) [classes/:na]
	at org.apache.drill.exec.expr.fn.FunctionGenerationHelper.getOrderingComparator(FunctionGenerationHelper.java:84) [classes/:na]
{code}
)

> External sort does not support "obscure" numeric types
> ------------------------------------------------------
>
>                 Key: DRILL-5329
>                 URL: https://issues.apache.org/jira/browse/DRILL-5329
>             Project: Apache Drill
>          Issue Type: Bug
>    Affects Versions: 1.10.0
>            Reporter: Paul Rogers
>
> A unit test was created to exercise the "Sorter" mechanism within the External Sort, which is used to sort each incoming batch. The sorter was tested with each Drill data type.
> The following types fail:
> * TinyInt
> * UInt1
> The failure manifests on one of two ways:
> * If dynamic UDFs are enabled, the query crashes with an NPE. (See DRILL-5331.)
> * If dynamic UDFs are disabled, the generated code silently skips the comparison step, resulting in the sort not actually being done:
> Sorting a set of 20-pseudo-random rows produces the following output:
> {code}
> #, row #, key, value
> 0(0): 11, "0"
> 1(1): 14, "1"
> 2(2): 17, "2"
> 3(3): 0, "3"
> {code}
> The first number is the row index, the second is the row pointed to by the sv2 (which should be written to create sort order). Sort was done ASC, NULLS_HIGH, by the key field.
> A strong concern here is that there is no error or other warning to the user that Drill cannot sort this type; Drill just silently declines to perform the operation.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)