1
votes

I am new to Apache Drill, and currently I am following the instructions from this link here to learn about it:

Drill in 10 minutes

However, after checking that I had the pre-requisites, I hit an error when I execute the steps in 'Start Drill on Windows' section.

  1. Open Command Prompt.
  2. Open the apache-drill- folder.
  3. Go to the bin directory. For example: cd bin
  4. Type the following command on the command line: sqlline.bat -u "jdbc:drill:zk=local"

Error: Failure in connecting to Drill: org.apache.drill.exec.rpc.RpcException: Failure setting up ZK for client. (state= ,code=0) java.sql.SQLException: Failure in connecting to Drill: org.apache.drill.exec.rpc.RpcException: Failure setting up ZK for client. at org.apache.drill.jdbc.impl.DrillConnectionImpl.(DrillConnectionImpl.java:167) at org.apache.drill.jdbc.impl.DrillJdbc41Factory.newDrillConnection(DrillJdbc41Factory.java:72) at org.apache.drill.jdbc.impl.DrillFactory.newConnection(DrillFactory.java:69) at org.apache.calcite.avatica.UnregisteredDriver.connect(UnregisteredDriver.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(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java: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.exec.rpc.RpcException: Failure setting up ZK for client. at org.apache.drill.exec.client.DrillClient.connect(DrillClient.java:329) at org.apache.drill.jdbc.impl.DrillConnectionImpl.(DrillConnectionImpl.java:158) ... 18 more

Caused by: java.io.IOException: Failure to connect to the zookeeper cluster service within the allotted time of 10000 mi lliseconds. at org.apache.drill.exec.coord.zk.ZKClusterCoordinator.start(ZKClusterCoordinator.java:123) at org.apache.drill.exec.client.DrillClient.connect(DrillClient.java:327) ... 19 more

local (The system cannot find the file specified)

apache drill 1.11.0

Where is the 'local' file, and where can I get it?

2
Curious. If you don't have a ZooKeeper environment you connect to a local provided instance, hence the 'local' parameter. This is not a file but an environment. To me this seems like a typo somewhere. - tobi6
Using Windows 10 followed steps in Drill in 10 minutes and was able to start Drill successfully. From the exception you have attached it looks like Drill is trying to connect to real Zk instead of local. Please check Drill logs to see if there any other exception or problems indicated. - Arina Yelchiyeva
@tobi6 I followed exactly as the steps indicated, no typo issue. - Khaimeng
@ArinaYelchiyeva There are no exceptions in the log file. I am using Windows 7 by the way. - Khaimeng

2 Answers

1
votes

Try drill bit in the command instead of zk because zookeeper has nothing to do if you are using the drill in embedded mode

"jdbc:drill:drillbit=local"

1
votes

I had this issue, but was using Powershell, instead of command prompt.

Try running cmd /r 'sqlline.bat -u "jdbc:drill:zk=local"'