hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carter Shanklin (JIRA)" <>
Subject [jira] [Created] (HIVE-16942) INFORMATION_SCHEMA: schematool for setting it up is not idempotent
Date Thu, 22 Jun 2017 14:22:00 GMT
Carter Shanklin created HIVE-16942:

             Summary: INFORMATION_SCHEMA: schematool for setting it up is not idempotent
                 Key: HIVE-16942
             Project: Hive
          Issue Type: Bug
    Affects Versions: 3.0.0
            Reporter: Carter Shanklin

If you run schematool to set up information schema, but the SYS database already exists, here's
what happens:

[vagrant@trunk apache-hive-3.0.0-SNAPSHOT-bin]$ schematool -metaDbType mysql -dbType hive
-initSchema -url jdbc:hive2://localhost:10000/default -driver org.apache.hive.jdbc.HiveDriver
Metastore connection URL:	 jdbc:hive2://localhost:10000/default
Metastore Connection Driver :	 org.apache.hive.jdbc.HiveDriver
Metastore connection User:	 hive
Starting metastore schema initialization to 3.0.0
Initialization script hive-schema-3.0.0.hive.sql
Error: org.apache.hive.service.cli.HiveSQLException: Error while processing statement: FAILED:
Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Database SYS already
	at org.apache.hive.service.cli.operation.Operation.toSQLException(
	at org.apache.hive.service.cli.operation.SQLOperation.runQuery(

Why is this a problem you ask?

If you run schematool without hive.metastore.db.type set (or set to the wrong thing), it will
create the sys database but fail to create any of the tables within it. If you go and fix
hive.metastore.db.type and re-run you'll get this failure until you drop the SYS database
(which must be done as the hive user).

Can the init script use "create database if not exists sys" rather than just "create database

This message was sent by Atlassian JIRA

View raw message