drill-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <IC...@us.imshealth.com>
Subject RE: Drill 1.9.0 - Embedded mode doesn't work on Windows
Date Tue, 06 Dec 2016 18:22:40 GMT
Hi Paul,

Sorry for the late response.

When I first ran into this issue, I have verified that the directory C:/User/ivy.chan/drill/udf/registry
has created by the process. So I don't think that is permission issue. I also tried your workaround
and for some reason it still try to create something in C:/User/ivy.chan/drill/udf/registry
and I got the exact same error.  Also tried to move drill to c drive under my profile, still
not working.

For now, I have a cluster setup and running in other servers so I'm good.

Thanks for your help.

Ivy

-----Original Message-----
From: Paul Rogers [mailto:progers@maprtech.com]
Sent: Saturday, December 03, 2016 7:46 PM
To: user@drill.apache.org
Subject: Re: Drill 1.9.0 - Embedded mode doesn't work on Windows

Hi Ivy,

Looks like a glitch in the shiny new dynamic UDF feature. Does the directory Users/ivy.chan
exist on the C: drive? You can work around this in a couple of ways.

First, disable the dynamic UDF feature (which is not really needed for an embedded Drillbit).
Unfortunately, this works only once the Drillbit is up because it is a runtime SQL option:

ALTER SESSION SET `exec.udf.enable_dynamic_support` = false

The other is to change the location of the directory that the feature is trying to create.
Add the following to your $DRILL_HOME/conf/drill-override.conf file:

drill.udf.directory.root: “C:\Temp”

Or any other directory that does, in fact, exist on your system.

Let us know if this works. If not, perhaps Arina (who developed the feature) can help provide
a better solution.

Thanks,

- Paul


> On Dec 3, 2016, at 6:24 PM, <IChan@us.imshealth.com> <IChan@us.imshealth.com>
wrote:
>
> Hi
>
> I'm trying out 1.9.0 on our Windows server. When launching the embedded mode, I got the
following errors:
>
>
> E:\software\apache-drill-1.9.0\bin>sqlline.bat -u "jdbc:drill:zk=local"
> DRILL_ARGS - " -u jdbc:drill:zk=local"
> HADOOP_HOME not detected...
> HBASE_HOME not detected...
> Calculating Drill classpath...
> Error: Failure in starting embedded Drillbit:
> org.apache.drill.common.exceptions
> .DrillRuntimeException: Error during udf area creation
> [/C:/Users/ivy.chan/drill /udf/registry] on file system [file:///]
> (state=,code=0)
> java.sql.SQLException: Failure in starting embedded Drillbit:
> org.apache.drill.c
> ommon.exceptions.DrillRuntimeException: Error during udf area creation
> [/C:/User s/ivy.chan/drill/udf/registry] on file system [file:///]
>        at
> org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(DrillConnection
> Impl.java:128)
>        at
> org.apache.drill.jdbc.impl.DrillJdbc41Factory.newDrillConnection(Dril
> lJdbc41Factory.java:70)
>        at
> org.apache.drill.jdbc.impl.DrillFactory.newConnection(DrillFactory.ja
> va:69)
>        at
> org.apache.calcite.avatica.UnregisteredDriver.connect(UnregisteredDri
> ver.java:143)
>        at org.apache.drill.jdbc.Driver.connect(Driver.java:72)
>        at sqlline.DatabaseConnection.connect(DatabaseConnection.java:167)
>        at
> sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:213)
>
>        at sqlline.Commands.connect(Commands.java:1083)
>        at sqlline.Commands.connect(Commands.java:1015)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:62)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:43)
>        at java.lang.reflect.Method.invoke(Method.java:497)
>        at
> sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.jav
> a:36)
>        at sqlline.SqlLine.dispatch(SqlLine.java:742)
>        at sqlline.SqlLine.initArgs(SqlLine.java:528)
>        at sqlline.SqlLine.begin(SqlLine.java:596)
>        at sqlline.SqlLine.start(SqlLine.java:375)
>        at sqlline.SqlLine.main(SqlLine.java:268)
> Caused by: org.apache.drill.common.exceptions.DrillRuntimeException:
> Error durin g udf area creation
> [/C:/Users/ivy.chan/drill/udf/registry] on file system [file :///]
>        at
> org.apache.drill.common.exceptions.DrillRuntimeException.format(Drill
> RuntimeException.java:49)
>        at
> org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.createA
> rea(RemoteFunctionRegistry.java:246)
>        at
> org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.prepare
> Areas(RemoteFunctionRegistry.java:208)
>        at
> org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.init(Re
> moteFunctionRegistry.java:106)
>        at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:126)
>        at
> org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(DrillConnection
> Impl.java:119)
>        ... 18 more
> Caused by: java.lang.IllegalStateException: Area
> [/C:/Users/ivy.chan/drill/udf/r egistry] must be writable and executable for application
user
>        at
> com.google.common.base.Preconditions.checkState(Preconditions.java:19
> 7)
>        at
> org.apache.drill.exec.expr.fn.registry.RemoteFunctionRegistry.createA
> rea(RemoteFunctionRegistry.java:238)
>        ... 22 more
> apache drill 1.9.0
> "got drill?"
>
> It is working on 1.8.0.
>
> I also got compile error on sqlline.log:
>
> 2016-12-03 21:05:59,026 [main] WARN  o.a.drill.exec.util.GuavaPatcher - Unable to patch
Guava classes.
> javassist.CannotCompileException: by java.lang.LinkageError: loader (instance of  sun/misc/Launcher$AppClassLoader):
attempted  duplicate class definition for name: "com/google/common/base/Stopwatch"
>                at javassist.ClassPool.toClass(ClassPool.java:1085) ~[javassist-3.12.1.GA.jar:na]
>                at javassist.ClassPool.toClass(ClassPool.java:1028) ~[javassist-3.12.1.GA.jar:na]
>                at javassist.ClassPool.toClass(ClassPool.java:986) ~[javassist-3.12.1.GA.jar:na]
>                at javassist.CtClass.toClass(CtClass.java:1079) ~[javassist-3.12.1.GA.jar:na]
>                at org.apache.drill.exec.util.GuavaPatcher.patchStopwatch(GuavaPatcher.java:66)
~[drill-java-exec-1.9.0.jar:1.9.0]
>                at org.apache.drill.exec.util.GuavaPatcher.patch(GuavaPatcher.java:36)
~[drill-java-exec-1.9.0.jar:1.9.0]
>                at org.apache.drill.exec.server.Drillbit.<clinit>(Drillbit.java:63)
[drill-java-exec-1.9.0.jar:1.9.0]
>                at org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(DrillConnectionImpl.java:118)
[drill-jdbc-1.9.0.jar:1.9.0]
>                at org.apache.drill.jdbc.impl.DrillJdbc41Factory.newDrillConnection(DrillJdbc41Factory.java:70)
[drill-jdbc-1.9.0.jar:1.9.0]
>                at org.apache.drill.jdbc.impl.DrillFactory.newConnection(DrillFactory.java:69)
[drill-jdbc-1.9.0.jar:1.9.0]
>                at org.apache.calcite.avatica.UnregisteredDriver.connect(UnregisteredDriver.java:143)
[calcite-avatica-1.4.0-drill-r19.jar:1.4.0-drill-r19]
>                at org.apache.drill.jdbc.Driver.connect(Driver.java:72) [drill-jdbc-1.9.0.jar:1.9.0]
>                at sqlline.DatabaseConnection.connect(DatabaseConnection.java:167) [sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:213)
[sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.Commands.connect(Commands.java:1083) [sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.Commands.connect(Commands.java:1015) [sqlline-1.1.9-drill-r7.jar:na]
>                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_73]
>                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_73]
>                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_73]
>                at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_73]
>                at sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:36)
[sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.SqlLine.dispatch(SqlLine.java:742) [sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.SqlLine.initArgs(SqlLine.java:528) [sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.SqlLine.begin(SqlLine.java:596) [sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.SqlLine.start(SqlLine.java:375) [sqlline-1.1.9-drill-r7.jar:na]
>                at sqlline.SqlLine.main(SqlLine.java:268)
> [sqlline-1.1.9-drill-r7.jar:na] Caused by: java.lang.LinkageError: loader (instance of
 sun/misc/Launcher$AppClassLoader): attempted  duplicate class definition for name: "com/google/common/base/Stopwatch"
>                at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_73]
>                at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_73]
>                at java.lang.ClassLoader.defineClass(ClassLoader.java:642) ~[na:1.8.0_73]
>                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_73]
>                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0_73]
>                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0_73]
>                at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_73]
>                at javassist.ClassPool.toClass2(ClassPool.java:1098) ~[javassist-3.12.1.GA.jar:na]
>                at javassist.ClassPool.toClass(ClassPool.java:1079) ~[javassist-3.12.1.GA.jar:na]
>                ... 25 common frames omitted
>
> Thanks,
> Ivy Chan
>
>
>
>
>
> ________________________________
> ********************** IMPORTANT--PLEASE READ ************************
> This electronic message, including its attachments, is CONFIDENTIAL
> and may contain PROPRIETARY or LEGALLY PRIVILEGED or PROTECTED
> information and is intended for the authorized recipient of the
> sender. If you are not the intended recipient, you are hereby notified
> that any use, disclosure, copying, or distribution of this message or
> any of the information included in it is unauthorized and strictly
> prohibited. If you have received this message in error, please
> immediately notify the sender by reply e-mail and permanently delete
> this message and its attachments, along with any copies thereof, from
> all locations received (e.g., computer, mobile device, etc.). Thank
> you.
> **********************************************************************
> **


********************** IMPORTANT--PLEASE READ ************************ This electronic message,
including its attachments, is CONFIDENTIAL and may contain PROPRIETARY or LEGALLY PRIVILEGED
or PROTECTED information and is intended for the authorized recipient of the sender.  If you
are not the intended recipient, you are hereby notified that any use, disclosure, copying,
or distribution of this message or any of the information included in it is unauthorized and
strictly prohibited.  If you have received this message in error, please immediately notify
the sender by reply e-mail and permanently delete this message and its attachments, along
with any copies thereof, from all locations received (e.g., computer, mobile device, etc.).
 Thank you. ************************************************************************
Mime
View raw message