Hi Robit,

There is a JIRA issue which tracks the similar problem : DRILL-297 - Trace
operator throws NPE if the configured path is not writable.

Looks like a patch has been provided to address NPE. But the patch probably
has not been in the master branch yet.

Regards,

Jinfeng



On Wed, Nov 27, 2013 at 3:40 AM, Rohit <[email protected]> wrote:

> Hey Guys,
>
> While running test cases of Drill. I get this issue.
>
> java.lang.NullPointerException
>         at
> com.google.common.base.Preconditions.checkNotNull(Preconditions.java:191)
>         at
> org.apache.drill.exec.cache.VectorAccessibleSerializable.writeToStream(VectorAccessibleSerializable.java:144)
>         at
> org.apache.drill.exec.cache.VectorAccessibleSerializable.writeToStreamAndRetain(VectorAccessibleSerializable.java:134)
>         at
> org.apache.drill.exec.physical.impl.trace.TraceRecordBatch.doWork(TraceRecordBatch.java:116)
>         at
> org.apache.drill.exec.record.AbstractSingleRecordBatch.next(AbstractSingleRecordBatch.java:63)
>         at
> org.apache.drill.exec.physical.impl.SimpleRootExec.next(SimpleRootExec.java:70)
>         at
> org.apache.drill.exec.client.DumpCatTest.testDumpCat(DumpCatTest.java:82)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.lang.reflect.Method.invoke(Method.java:606)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.lang.reflect.Method.invoke(Method.java:606)
>         at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
>         at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>         at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
>         at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
>         at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
>         at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
>
> I’m running these test on Mackbook and my finding tell me that Drill tries
> to make a dump at this location
> /var/log/drill//00000000-0000-0000-0000-000000000000_0_0_mock-scan. It
> gets this file name from getFileName() method inside TraceRecordBatch.java.
> The source of prefix of this path comes from
> incubator-drill/exec/java-exec/target/classes/drill-module.conf file.
>
> The issue here is there is no path in /var/log/drill as unlike linux there
> is no folder that starts from /var.
> Since this is a conf part a user should have addressed this while
> configuring drill in their infrastructure. However, if he forgets to do so.
> I think we should have a test case for this which asserts if “trace"
> location is valid or not. Any suggestions ?
>
>
> Regards,
> Rohit.
>
>

Reply via email to