2012-01-09 4 views
3

하이브를 실행하는 중에 다음 오류가 발생합니다. 나는 디폴트 더비 db를 사용하고있다. 내가 어떤 도움을 이해할 수있을 것이다하이브 쇼 테이블에 오류가 발생했습니다

[email protected]:~/dse-1.0.1/bin# dse hadoop version 
Hadoop 0.20.204.1-dse1-SNAPSHOT 
Subversion git://ip-10-98-83-84/ on branch (no branch) -r e44f689b34165e7909e7c7c48c7f1a5a9171e8c7 
Compiled by hudson on Thu Nov 3 16:05:34 EDT 2011 



hive> show tables; 
java.lang.NoSuchMethodError: org.apache.thrift.meta_data.FieldValueMetaData.<init>(BZ)V 
     at org.apache.cassandra.thrift.CfDef.<clinit>(CfDef.java:296) 
     at org.apache.cassandra.thrift.KsDef.read(KsDef.java:753) 
     at org.apache.cassandra.thrift.Cassandra$describe_keyspaces_result.read(Cassandra.java:21498) 
     at org.apache.cassandra.thrift.Cassandra$Client.recv_describe_keyspaces(Cassandra.java:1153) 
     at org.apache.cassandra.thrift.Cassandra$Client.describe_keyspaces(Cassandra.java:1129) 
     at com.datastax.bdp.util.CassandraProxyClient.initialize(CassandraProxyClient.java:213) 
     at com.datastax.bdp.util.CassandraProxyClient.<init>(CassandraProxyClient.java:180) 
     at com.datastax.bdp.util.CassandraProxyClient.newProxyConnection(CassandraProxyClient.java:119) 
     at com.datastax.bdp.hadoop.hive.metastore.CassandraClientHolder.<init>(CassandraClientHolder.java:66) 
     at com.datastax.bdp.hadoop.hive.metastore.CassandraHiveMetaStore.setConf(CassandraHiveMetaStore.java:69) 
     at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62) 
     at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:316) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.executeWithRetry(HiveMetaStore.java:268) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:413) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:194) 
     at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.<init>(HiveMetaStore.java:159) 
     at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:108) 
     at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:1868) 
     at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:1878) 
     at org.apache.hadoop.hive.ql.metadata.Hive.getDatabase(Hive.java:1024) 
     at org.apache.hadoop.hive.ql.metadata.Hive.databaseExists(Hive.java:1013) 
     at org.apache.hadoop.hive.ql.exec.DDLTask.showTables(DDLTask.java:1691) 
     at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:289) 
     at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:130) 
     at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57) 
     at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1063) 
     at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:900) 
     at org.apache.hadoop.hive.ql.Driver.run(Driver.java:748) 
     at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:164) 
     at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:241) 
     at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:456) 
     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:616) 
     at org.apache.hadoop.util.RunJar.main(RunJar.java:156) 

하둡 버전 다음 사용하고

.

감사합니다.

답변

1

클래스 패스에 잘못된 항아리가있는 것 같습니다. NoSuchMethodError 오류는 Jars의 이전 버전 (또는 지원되지 않는 버전)이있을 때 발생합니다.

+0

어떻게 클래스 경로를 찾아서 정리할 수 있습니까? – user1106775

0

클래스 경로이 잘못 정의되었을 수 있습니다.

  • 이 두 줄

    을 파일 .bash_profile을 개설하고 추가 로컬 컴퓨터에
    1. 설치된 하이브 하이브

      를 구성하는 동안

      단계 I는 다음과 같이

      수출 HIVE_HOME =/가정/하둡/데스크탑/하이브 -0.6.0

      내보내기 PATH = $ PATH : $ HIVE_HOME/bin

      [선택 :의 bin 폴더에 입력하지 않고 직접 하이브를 실행] ~/.bash_profile에 터미널에

    2. 입력 소스를

    3. 마지막으로, 터미널

    친절 게시물에 입력 하이브 당신이 설치 한 방식으로 하이브