Hive

Hive Metastore 에러

유나아빠 2015. 1. 15. 18:33

요즘 처음 보는 에러가 자구 발생하네 헙헙!

메터스토어의 버젼이 여러개 있다는 에러메세지

2015-01-14 15:08:04,329 ERROR metastore.HiveMetaStore (HiveMetaStore.java:startMetaStore(4323)) - MetaException(message:Metastore contains multiple versions)

        at org.apache.hadoop.hive.metastore.ObjectStore.getMSchemaVersion(ObjectStore.java:5861)

        at org.apache.hadoop.hive.metastore.ObjectStore.getMetaStoreSchemaVersion(ObjectStore.java:5823)

        at org.apache.hadoop.hive.metastore.ObjectStore.checkSchema(ObjectStore.java:5782)

        at org.apache.hadoop.hive.metastore.ObjectStore.verifySchema(ObjectStore.java:5770)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:606)

        at org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:108)

        at com.sun.proxy.$Proxy0.verifySchema(Unknown Source)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:408)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:446)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:333)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.<init>(HiveMetaStore.java:293)

        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:54)

        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:59)

        at org.apache.hadoop.hive.metastore.HiveMetaStore.newHMSHandler(HiveMetaStore.java:4085)

        at org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:4287)

        at org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:4221)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:606)

        at org.apache.hadoop.util.RunJar.main(RunJar.java:212)


2015-01-14 15:08:04,330 ERROR metastore.HiveMetaStore (HiveMetaStore.java:main(4224)) - Metastore Thrift Server threw an exception...

MetaException(message:Metastore contains multiple versions)

        at org.apache.hadoop.hive.metastore.ObjectStore.getMSchemaVersion(ObjectStore.java:5861)

        at org.apache.hadoop.hive.metastore.ObjectStore.getMetaStoreSchemaVersion(ObjectStore.java:5823)

        at org.apache.hadoop.hive.metastore.ObjectStore.checkSchema(ObjectStore.java:5782)

        at org.apache.hadoop.hive.metastore.ObjectStore.verifySchema(ObjectStore.java:5770)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:606)

        at org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:108)

        at com.sun.proxy.$Proxy0.verifySchema(Unknown Source)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:408)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:446)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:333)

        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.<init>(HiveMetaStore.java:293)

        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:54)

        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:59)

        at org.apache.hadoop.hive.metastore.HiveMetaStore.newHMSHandler(HiveMetaStore.java:4085)

        at org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:4287)

        at org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:4221)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:606)

        at org.apache.hadoop.util.RunJar.main(RunJar.java:212)


메터스토어의 VERSION테이블을 보니 에러메세지 대로 2개의 레코드가 존재....왜일까?

원인 파악중...

mysql> select * from VERSION;
+--------+----------------+------------------+
| VER_ID | SCHEMA_VERSION | VERSION_COMMENT  |
+--------+----------------+------------------+
|      1 | 0.12.0         | Set by MetaStore |
|     17 | 0.12.0         | Set by MetaStore |
+--------+----------------+------------------+
2 rows in set (0.00 sec)