2012-01-09 43 views
3

我在運行配置單元時遇到以下錯誤。我正在使用默認的德比數據庫。配置單元顯示錶給出錯誤

我使用的hadoop以下版本

[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

看來你在classpath中有錯誤的jar。當您有舊版本(或不支持的版本)Jars時,會發生NoSuchMethodError錯誤。

+0

我該如何找到並清理classpath。 – user1106775 2012-01-09 23:13:05

0

類路徑可能會被錯誤地定義。

的步驟,我在配置HIVE

  1. 安裝蜂房本地機器

  2. 打開.bash_profile文件中,並添加兩行

    其次

    出口HIVE_HOME = /家庭/ Hadoop的/臺式機/ hive-0.6.0

    export PATH = $ PATH:$ HIVE_HOME/bin

    [可選:對於直接運行蜂房不進入其bin文件夾]〜/ .bash_profile中在終端

  3. 類型源

  4. 最後,在終端

請交型蜂房我安裝蜂巢的方式

相關問題