Hello,

I am running hive with a hadoop mini cluster and want to switch to mysql as a 
metastore because I need multiple connections at same time (not sure if this 
will work at all). I tried the local metastore config. The DB and two tables in 
mysql are created but I receive an error. If I comment out the metastore 
settings in hive-site.xml everthing goes well with derby.

Maybe somebody has a clue.
Malte

Java code
=========
    Connection con = DriverManager.getConnection("jdbc:hive://", "", "");
    Statement stmt = con.createStatement();
    String tableName = "testHiveDriverTable";
    ResultSet res = null;
    // show tables
    String sql = "show tables";
    System.out.println("Running: " + sql);
    res = stmt.executeQuery(sql);
    while (res.next()) {
      System.out.println(res.getString(1));
    }

Exception
=========
FAILED: Error in metadata: java.lang.IllegalArgumentException: URI:  does not 
have a scheme
13:16:47,158 ERROR (SessionState.java:277) - FAILED: Error in metadata: 
java.lang.IllegalArgumentException: URI:  does not have a scheme
org.apache.hadoop.hive.ql.metadata.HiveException: 
java.lang.IllegalArgumentException: URI:  does not have a scheme
        at 
org.apache.hadoop.hive.ql.metadata.Hive.getTablesByPattern(Hive.java:605)
        at org.apache.hadoop.hive.ql.metadata.Hive.getAllTables(Hive.java:577)
        at org.apache.hadoop.hive.ql.metadata.Hive.getAllTables(Hive.java:567)
        at org.apache.hadoop.hive.ql.exec.DDLTask.showTables(DDLTask.java:1090)
        at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:227)
        at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:107)
        at 
org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:55)
        at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:633)
        at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:506)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:384)
        at 
org.apache.hadoop.hive.service.HiveServer$HiveServerHandler.execute(HiveServer.java:114)
        at 
org.apache.hadoop.hive.jdbc.HiveStatement.executeQuery(HiveStatement.java:195)
        at de.codiacs.hive.service.HiveService2.main(HiveService2.java:38)
Caused by: java.lang.IllegalArgumentException: URI:  does not have a scheme
        at 
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:105)
        at 
org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:1269)
        at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:1279)
        at 
org.apache.hadoop.hive.ql.metadata.Hive.getTablesByPattern(Hive.java:603)
        ... 12 more

FAILED: Execution Error, return code 1 from 
org.apache.hadoop.hive.ql.exec.DDLTask
13:16:47,159 ERROR (SessionState.java:277) - FAILED: Execution Error, return 
code 1 from org.apache.hadoop.hive.ql.exec.DDLTask
Exception in thread "main" java.sql.SQLException: Query returned non-zero code: 
9, cause: FAILED: Execution Error, return code 1 from 
org.apache.hadoop.hive.ql.exec.DDLTask
        at 
org.apache.hadoop.hive.jdbc.HiveStatement.executeQuery(HiveStatement.java:197)
        at de.codiacs.hive.service.HiveService2.main(HiveService2.java:38)

 
part of hive-site.xml
=====================
        <property>
                <name>javax.jdo.option.ConnectionURL</name>
                
<value>jdbc:mysql://localhost/hive_metastore?createDatabaseIfNotExist=true</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionDriverName</name>
                <value>com.mysql.jdbc.Driver</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionUserName</name>
                <value>root</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionPassword</name>
                <value>test</value>
        </property>
        <property>
                <name>hive.metastore.local </name>
                <value>local</value>
        </property>

        <property>
                <name>hive.metastore.warehouse.dir</name>
                <value>hdfs://192.168.56.101:54310/hive</value>
                <description>location of default database for the 
warehouse</description>
        </property>
-- 
GMX DSL Doppel-Flat ab 19,99 Euro/mtl.! Jetzt mit 
gratis Handy-Flat! http://portal.gmx.net/de/go/dsl

Reply via email to