Sqoop
  1. Sqoop
  2. SQOOP-508

Sqoop metastore cannot be started due to missing hsqldb jar file

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 1.4.1-incubating
    • Fix Version/s: 1.4.2
    • Component/s: build
    • Labels:
      None

      Description

      This is a packing issue. Since a hsqldb jar is not packed in the distribution tarball, sqoop-metastore fails with the following error:

      Exception in thread "main" java.lang.NoClassDefFoundError: org/hsqldb/Server
      	at org.apache.sqoop.metastore.hsqldb.HsqldbMetaStore.start(HsqldbMetaStore.java:111)
      	at org.apache.sqoop.tool.MetastoreTool.run(MetastoreTool.java:57)
      	at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
      	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
      	at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
      	at org.apache.sqoop.Sqoop.runTool(Sqoop.java:220)
      	at org.apache.sqoop.Sqoop.runTool(Sqoop.java:229)
      	at org.apache.sqoop.Sqoop.main(Sqoop.java:238)
      	at com.cloudera.sqoop.Sqoop.main(Sqoop.java:57)
      Caused by: java.lang.ClassNotFoundException: org.hsqldb.Server
      	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
      	... 9 more
      

      To reproduce the issue, please do the following:

      1) checkout sqoop trunk
      2) ant clean tar
      3) cd build/sqoop-1.4.2-incubating-SNAPSHOT.bin__hadoop-0.23
      4) ./bin/sqoop metastore

      This may be not an issue if a hsqldb jar is already installed by another project and therefore exists in classpath. For example, CDH3 installs a hsqldb jar in /usr/lib/hadoop/lib. However, it is not always true in all distributions (e.g. CDH4).

      The fix seems to include a hsqldb jar in the distribution tarball.

      There is also a bigtop jira BIGTOP-639 regarding this issue.

      1. SQOOP-508.patch
        0.6 kB
        Cheolsoo Park

        Activity

        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Patch Available Patch Available
        8m 30s 1 Cheolsoo Park 25/Jun/12 09:50
        Patch Available Patch Available Resolved Resolved
        8h 53m 1 Bilung Lee 25/Jun/12 18:43
        Hide
        Hudson added a comment -

        Integrated in Sqoop-ant-jdk-1.6 #124 (See https://builds.apache.org/job/Sqoop-ant-jdk-1.6/124/)
        SQOOP-508 Sqoop metastore cannot be started due to missing hsqldb jar file (Revision 1353680)

        Result = SUCCESS
        blee :
        Files :

        • /sqoop/trunk/ivy.xml
        Show
        Hudson added a comment - Integrated in Sqoop-ant-jdk-1.6 #124 (See https://builds.apache.org/job/Sqoop-ant-jdk-1.6/124/ ) SQOOP-508 Sqoop metastore cannot be started due to missing hsqldb jar file (Revision 1353680) Result = SUCCESS blee : Files : /sqoop/trunk/ivy.xml
        Bilung Lee made changes -
        Status Patch Available [ 10002 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Bilung Lee added a comment -

        Thanks. Patch is committed.

        Show
        Bilung Lee added a comment - Thanks. Patch is committed.
        Cheolsoo Park made changes -
        Attachment SQOOP-508.patch [ 12533275 ]
        Cheolsoo Park made changes -
        Description This is a packing issue. Since a hsqldb jar is not packed in the distribution tarball, sqoop-metastore fails with the following error:

        {code}
        12/06/25 01:15:46 WARN hsqldb.HsqldbMetaStore: The location for metastore data has not been explicitly set. Placing shared metastore files in /home/cheolsoo/.sqoop/shared-metastore.db
        Exception in thread "main" java.lang.NoClassDefFoundError: org/hsqldb/Server
        at org.apache.sqoop.metastore.hsqldb.HsqldbMetaStore.start(HsqldbMetaStore.java:111)
        {code}

        To reproduce the issue, please do the following:

        1) checkout sqoop trunk
        2) ant clean tar
        3) cd build/sqoop-1.4.2-incubating-SNAPSHOT.bin__hadoop-0.23
        4) ./bin/sqoop metastore

        This may be not an issue if a hsqldb jar is already installed by another project and therefore exists in classpath. For example, CDH3 installs a hsqldb jar in /usr/lib/hadoop/lib. However, it is not always true in all distributions (e.g. CDH4).

        The fix seems to include a hsqldb jar in the distribution tarball.

        There is also a bigtop jira [BIGTOP-639|https://issues.apache.org/jira/browse/BIGTOP-639] regarding this issue.
        This is a packing issue. Since a hsqldb jar is not packed in the distribution tarball, sqoop-metastore fails with the following error:

        {code}
        Exception in thread "main" java.lang.NoClassDefFoundError: org/hsqldb/Server
        at org.apache.sqoop.metastore.hsqldb.HsqldbMetaStore.start(HsqldbMetaStore.java:111)
        at org.apache.sqoop.tool.MetastoreTool.run(MetastoreTool.java:57)
        at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
        at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:220)
        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:229)
        at org.apache.sqoop.Sqoop.main(Sqoop.java:238)
        at com.cloudera.sqoop.Sqoop.main(Sqoop.java:57)
        Caused by: java.lang.ClassNotFoundException: org.hsqldb.Server
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
        ... 9 more
        {code}

        To reproduce the issue, please do the following:

        1) checkout sqoop trunk
        2) ant clean tar
        3) cd build/sqoop-1.4.2-incubating-SNAPSHOT.bin__hadoop-0.23
        4) ./bin/sqoop metastore

        This may be not an issue if a hsqldb jar is already installed by another project and therefore exists in classpath. For example, CDH3 installs a hsqldb jar in /usr/lib/hadoop/lib. However, it is not always true in all distributions (e.g. CDH4).

        The fix seems to include a hsqldb jar in the distribution tarball.

        There is also a bigtop jira [BIGTOP-639|https://issues.apache.org/jira/browse/BIGTOP-639] regarding this issue.
        Cheolsoo Park made changes -
        Field Original Value New Value
        Status Open [ 1 ] Patch Available [ 10002 ]
        Hide
        Cheolsoo Park added a comment -
        Show
        Cheolsoo Park added a comment - Reviwd board: https://reviews.apache.org/r/5548/
        Cheolsoo Park created issue -

          People

          • Assignee:
            Cheolsoo Park
            Reporter:
            Cheolsoo Park
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development