You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Rob Wu (JIRA)" <ji...@apache.org> on 2017/03/07 00:41:33 UTC

[jira] [Created] (DRILL-5316) C++ Client Crashes When drillbitsVector.count is 0 after zoo_get_children completed with ZOK

Rob Wu created DRILL-5316:
-----------------------------

             Summary: C++ Client Crashes When drillbitsVector.count is 0 after zoo_get_children completed with ZOK
                 Key: DRILL-5316
                 URL: https://issues.apache.org/jira/browse/DRILL-5316
             Project: Apache Drill
          Issue Type: Bug
          Components: Client - C++
            Reporter: Rob Wu
            Priority: Critical


When connecting to drillbit with Zookeeper, occasionally the C++ client would crash without any reason.

A further look into the code revealed that during this call 
rc=zoo_get_children(p_zh.get(), m_path.c_str(), 0, &drillbitsVector); 

zoo_get_children returns ZOK (0) but drillbitsVector.count is 0.
This causes drillbits to stay empty and thus 
causes err = zook.getEndPoint(drillbits[drillbits.size() -1], endpoint); to crash

Size check should be done to prevent this from happening




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)