<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>question Storm-hbase bolt failing over DRPC in Archives of Support Questions (Read Only)</title>
    <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129216#M43409</link>
    <description>&lt;P&gt;I am writing a Storm topology to read data from HBase using DRPC. Essentially this performs a scan to get data, enriches the data and returns it.&lt;/P&gt;&lt;P&gt;I can easily get a basic DRPC example working (based on &lt;A href="http://storm.apache.org/releases/current/Distributed-RPC.html)" target="_blank"&gt;http://storm.apache.org/releases/current/Distributed-RPC.html)&lt;/A&gt;. However when I insert the code for the scan, the process takes a very long time. After a minute, I get the following error:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;backtype.storm.generated.DRPCExecutionException &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;        at backtype.storm.daemon.drpc$service_handler$reify__8688.failRequest(drpc.clj:136) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258] &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;        at backtype.storm.drpc.DRPCSpout.fail(DRPCSpout.java:241) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;A short while later, I get &lt;STRONG&gt;org.apache.hadoop.hbase.client.RetriesExhaustedException&lt;/STRONG&gt;. This doesn't always happen, but is very common. My assumption based on this is one of two possibilities:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;The scan is timing out. However performing the scan through HBase Shell or REST return in less than a second&lt;/LI&gt;&lt;LI&gt;The table is inconsistent, causing a certain region to be missing. I have run hbase hbck and it shows 0 inconsistencies.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;I know that the connection to HBase is fine: I have added debugging output and the bolt gets the results. However due to the DRPCExecutionException, these results are never returned over DRPC.&lt;/P&gt;&lt;P&gt;I though the issue was DRPC timeout, however I have increased the DRPC timeout a lot and I get the same result in the same amount of time. After Googling I found someone else with the same issue (http://stackoverflow.com/questions/35940623/stormdrpc-request-failed) but there is no indication of how to fix this.&lt;/P&gt;&lt;P&gt;For reference I am adding my code below:&lt;/P&gt;&lt;PRE&gt;try (Table table = HbaseClient.connection().getTable(TableName.valueOf("EPG_URI"))) 
    {
        List&amp;lt;Filter&amp;gt; filters = new ArrayList&amp;lt;&amp;gt;();
        String startRowString = "start";
        String endRowString = "end";
        RowFilter startRow = new RowFilter(CompareFilter.CompareOp.GREATER_OR_EQUAL, new BinaryPrefixComparator(startRowString.getBytes()));
        filters.add(startRow);
        RowFilter endRow = new RowFilter(CompareFilter.CompareOp.LESS_OR_EQUAL, new BinaryPrefixComparator(endRowString.getBytes()));
        filters.add(endRow);
        FilterList filterList = new FilterList(FilterList.Operator.MUST_PASS_ALL, filters);

        Scan scan = new Scan();
        scan.addFamily("f1".getBytes());
        scan.setFilter(filterList);

        ResultScanner scanner = table.getScanner(scan);
        for (Result result : scanner) 
        {
            hbaseValues.add(result);
        }
    }
} 
&lt;/PRE&gt;&lt;P&gt;Thanks in advance for the help.&lt;/P&gt;</description>
    <pubDate>Thu, 13 Oct 2016 15:51:54 GMT</pubDate>
    <dc:creator>Mark_Heydenrych</dc:creator>
    <dc:date>2016-10-13T15:51:54Z</dc:date>
    <item>
      <title>Storm-hbase bolt failing over DRPC</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129216#M43409</link>
      <description>&lt;P&gt;I am writing a Storm topology to read data from HBase using DRPC. Essentially this performs a scan to get data, enriches the data and returns it.&lt;/P&gt;&lt;P&gt;I can easily get a basic DRPC example working (based on &lt;A href="http://storm.apache.org/releases/current/Distributed-RPC.html)" target="_blank"&gt;http://storm.apache.org/releases/current/Distributed-RPC.html)&lt;/A&gt;. However when I insert the code for the scan, the process takes a very long time. After a minute, I get the following error:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;backtype.storm.generated.DRPCExecutionException &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;        at backtype.storm.daemon.drpc$service_handler$reify__8688.failRequest(drpc.clj:136) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258] &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;        at backtype.storm.drpc.DRPCSpout.fail(DRPCSpout.java:241) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;A short while later, I get &lt;STRONG&gt;org.apache.hadoop.hbase.client.RetriesExhaustedException&lt;/STRONG&gt;. This doesn't always happen, but is very common. My assumption based on this is one of two possibilities:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;The scan is timing out. However performing the scan through HBase Shell or REST return in less than a second&lt;/LI&gt;&lt;LI&gt;The table is inconsistent, causing a certain region to be missing. I have run hbase hbck and it shows 0 inconsistencies.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;I know that the connection to HBase is fine: I have added debugging output and the bolt gets the results. However due to the DRPCExecutionException, these results are never returned over DRPC.&lt;/P&gt;&lt;P&gt;I though the issue was DRPC timeout, however I have increased the DRPC timeout a lot and I get the same result in the same amount of time. After Googling I found someone else with the same issue (http://stackoverflow.com/questions/35940623/stormdrpc-request-failed) but there is no indication of how to fix this.&lt;/P&gt;&lt;P&gt;For reference I am adding my code below:&lt;/P&gt;&lt;PRE&gt;try (Table table = HbaseClient.connection().getTable(TableName.valueOf("EPG_URI"))) 
    {
        List&amp;lt;Filter&amp;gt; filters = new ArrayList&amp;lt;&amp;gt;();
        String startRowString = "start";
        String endRowString = "end";
        RowFilter startRow = new RowFilter(CompareFilter.CompareOp.GREATER_OR_EQUAL, new BinaryPrefixComparator(startRowString.getBytes()));
        filters.add(startRow);
        RowFilter endRow = new RowFilter(CompareFilter.CompareOp.LESS_OR_EQUAL, new BinaryPrefixComparator(endRowString.getBytes()));
        filters.add(endRow);
        FilterList filterList = new FilterList(FilterList.Operator.MUST_PASS_ALL, filters);

        Scan scan = new Scan();
        scan.addFamily("f1".getBytes());
        scan.setFilter(filterList);

        ResultScanner scanner = table.getScanner(scan);
        for (Result result : scanner) 
        {
            hbaseValues.add(result);
        }
    }
} 
&lt;/PRE&gt;&lt;P&gt;Thanks in advance for the help.&lt;/P&gt;</description>
      <pubDate>Thu, 13 Oct 2016 15:51:54 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129216#M43409</guid>
      <dc:creator>Mark_Heydenrych</dc:creator>
      <dc:date>2016-10-13T15:51:54Z</dc:date>
    </item>
    <item>
      <title>Re: Storm-hbase bolt failing over DRPC</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129217#M43410</link>
      <description>&lt;P&gt;Can you share the full HBase errors/exceptions you see? It's not clear to me from your description whether this should be approached from the Storm side or the HBase side.&lt;/P&gt;</description>
      <pubDate>Thu, 20 Oct 2016 22:16:49 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129217#M43410</guid>
      <dc:creator>elserj</dc:creator>
      <dc:date>2016-10-20T22:16:49Z</dc:date>
    </item>
    <item>
      <title>Re: Storm-hbase bolt failing over DRPC</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129218#M43411</link>
      <description>&lt;P&gt;&lt;A rel="user" href="https://community.cloudera.com/users/223/jelser.html" nodeid="223"&gt;@Josh Elser&lt;/A&gt; It wasn't actually giving me any clears errors or exceptions, simply hanging. However I succesfully fixed it by simplifying my scan as below:&lt;/P&gt;&lt;P&gt;Scan scan = new Scan(startRowString.getBytes(), endRowString.getBytes()); &lt;/P&gt;&lt;P&gt;                scan.addFamily("f1".getBytes()); &lt;/P&gt;&lt;P&gt;                ResultScanner scanner = table.getScanner(scan); &lt;/P&gt;&lt;P&gt;                for (Result r : scanner) &lt;/P&gt;&lt;P&gt;                {...}&lt;/P&gt;&lt;P&gt;Based on that the problem seemed to be on the HBase side rather than Storm.&lt;/P&gt;</description>
      <pubDate>Fri, 21 Oct 2016 12:14:19 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129218#M43411</guid>
      <dc:creator>Mark_Heydenrych</dc:creator>
      <dc:date>2016-10-21T12:14:19Z</dc:date>
    </item>
    <item>
      <title>Re: Storm-hbase bolt failing over DRPC</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129219#M43412</link>
      <description>&lt;P&gt;Hrm. Curious. Maybe the HBase client API is doing multiple retries before giving up? You can try reducing "Maximum Client Retries" on the Ambari configuration page for HBase from 35 to 5 or 10 to make the client give up and tell you why it was failing/retrying. Just a guess given what you've been able to provide so far.&lt;/P&gt;</description>
      <pubDate>Fri, 21 Oct 2016 22:31:34 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Storm-hbase-bolt-failing-over-DRPC/m-p/129219#M43412</guid>
      <dc:creator>elserj</dc:creator>
      <dc:date>2016-10-21T22:31:34Z</dc:date>
    </item>
  </channel>
</rss>

