The Hortonworks Community Connection is now live. A completely rebuilt Q&A forum, Knowledge Base, Code Hub and more, backed by the experts in the industry.

You will be redirected here in 10 seconds. If your are not redirected, click here to visit the new site.

The legacy Hortonworks Forum is now closed. You can view a read-only version of the former site by clicking here. The site will be taken offline on January 31,2016

HBase Forum

HBaseTestingUtility not working on HDP2.1

  • #53767
    Noam Cohen
    Participant

    Hey guys –
    In order to perform JUnit tests for my HBase code, I followed the example in the following URLs:
    http://blog.sematext.com/2010/08/30/hbase-case-study-using-hbasetestingutility-for-local-testing-development/
    http://blog.cloudera.com/blog/2013/09/how-to-test-hbase-applications-using-popular-tools/

    I tried to use the HBaseTestingUtility class, however, in both cases the startMiniCluster() command ended with the following exception:
    java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/test/MetricsAssertHelper
    at org.apache.hadoop.hbase.MiniHBaseCluster.<init>(MiniHBaseCluster.java:91)
    at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniHBaseCluster(HBaseTestingUtility.java:889)
    at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:853)
    at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:770)
    at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:741)
    at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:710)

    Has any of you successfully managed to use the HBaseTestingUtility over HDP2.1?

  • Author
    Replies
  • #53768
    Noam Cohen
    Participant

    Just to clarify – This is not a classpath issue. The above didn’t work from inside Eclipse, neither when I ran it from command line with the hbase classpath and hadoop classpath commands provided, as in:

    java -cp /tmp/test.jar:hbase classpath:/etc/hbase/conf:hadoop classpath org.junit.runner.JUnitCore MyHBaseIntegrationTest

    #53770
    Enis Soztutar
    Moderator

    Do you have hbase-hadoop-compat module in the classpath or eclipse import? That class is coming from that module.

    #53771
    Noam Cohen
    Participant

    I have both “hbase-hadoop-compat-0.98.0-hadoop2.jar” and “hbase-hadoop2-compat-0.98.0-hadoop2.jar” in my classpath. None of them include the required class.
    Moreover – I used a utility called “JWhich” (http://www.javaworld.com/article/2077468/core-java/java-tip-105–mastering-the-classpath-with-jwhich.html) to search for the “org.apache.hadoop.hbase.test.MetricsAssertHelper” class in the entire hbase classpath and hadoop classpath libs and could not find it anywhere…

The forum ‘HBase’ is closed to new topics and replies.

Support from the Experts

A HDP Support Subscription connects you experts with deep experience running Apache Hadoop in production, at-scale on the most demanding workloads.

Enterprise Support »

Become HDP Certified

Real world training designed by the core architects of Hadoop. Scenario-based training courses are available in-classroom or online from anywhere in the world

Training »

Hortonworks Data Platform
The Hortonworks Data Platform is a 100% open source distribution of Apache Hadoop that is truly enterprise grade having been built, tested and hardened with enterprise rigor.
Get started with Sandbox
Hortonworks Sandbox is a self-contained virtual machine with Apache Hadoop pre-configured alongside a set of hands-on, step-by-step Hadoop tutorials.
Modern Data Architecture
Tackle the challenges of big data. Hadoop integrates with existing EDW, RDBMS and MPP systems to deliver lower cost, higher capacity infrastructure.