Goal:
If drillbit gets hung, and queries may get stuck on that drillbit, this script can help you quickly do the health check for each drillbit.Basically It will connect to each drillbit using JDBC and run a simple query.
If the script get stuck when connecting to one drillbit, we need to troubleshoot by collecting jstack output and drillbit.log.
Solution:
Here is the source code for this script:https://github.com/viadea/DrillRelated
Compile:
javac HealthCheck.java
Usage:
java -cp /opt/mapr/drill/drill-1.4.0/jars/jdbc-driver/drill-jdbc-all-1.4.0.jar:. HealthCheck <username> <password> <Initial_Host> <Drill_Port>Default values for username and password are: mapr/mapr
Default value for Initial_Host is : localhost
Default value for Drill_Port is: 31010
Example:
# java -cp /opt/mapr/drill/drill-1.4.0/jars/jdbc-driver/drill-jdbc-all-1.4.0.jar:. HealthCheck Step 1. Creating Drill Connection to : jdbc:drill:drillbit=localhost:31010 Step 2. Fetching all drillbits Connecting to v2.poc.com:31010 Successful! Connecting to v3.poc.com:31010 Successful! Connecting to v4.poc.com:31010 Successful! Connecting to v1.poc.com:31010 Successful!
Note: if this script gets stuck on one of the drillbits, before shutting down that drillbit, please remember to take jstack output for further RCA.
After shutting down that problematic drillbit, then re-run this script until every drillbit is working fine.
Good day fellas! Thank you for the information that you posted here in this blog, I really appreciate it! I was hesitating about opportunity to get rid of my panic disorder using this remote affordable online therapy. To trust and match counselor it took me only 2 visits. I really appreciate these therapy online platforms for an individual approach and an awesome customer support.
ReplyDelete