You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Paul Rogers (JIRA)" <ji...@apache.org> on 2017/12/06 20:23:01 UTC

[jira] [Created] (DRILL-6015) Unit tests fail in Eclipse because source is not on class path

Paul Rogers created DRILL-6015:
----------------------------------

             Summary: Unit tests fail in Eclipse because source is not on class path
                 Key: DRILL-6015
                 URL: https://issues.apache.org/jira/browse/DRILL-6015
             Project: Apache Drill
          Issue Type: Bug
    Affects Versions: 1.12.0
            Reporter: Paul Rogers


Using Eclipse, attempt to run TestJsonReader as a JUnit test. Many test cases fail with the following error:

{noformat}
12:17:38.791 [main] ERROR org.apache.drill.TestReporter - Test Failed (d: 0 B(1 B), h: 23.5 MiB(150.0 MiB), nh: 14.7 MiB(71.2 MiB)): drill_4479(org.apache.drill.exec.vector.complex.writer.TestJsonReader)
java.lang.Exception: org.apache.drill.common.exceptions.UserRemoteException: FUNCTION ERROR: Failure reading Function class.

Function Class: org.apache.drill.exec.expr.fn.impl.gaggr.CountFunctions$BigIntCountFunction
Fragment: 0:0

  (java.io.IOException) Failure trying to locate source code for class org.apache.drill.exec.expr.fn.impl.gaggr.CountFunctions$BigIntCountFunction, tried to read on classpath location /org/apache/drill/exec/expr/fn/impl/gaggr/CountFunctions.java
{noformat}

As noted in the message, the Drill source code (at least for functions) must be on the class path. But, this is an unusual configuration, and requires that sources be copied to target directory as resources.

The workaround is to manually add the required class path entry for each test run in Eclipse. This is error prone and tedious as a typical debug session may run a dozen individual test cases, each of which needs its own configuration.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)