2016-07-30 5 views
1

У меня запущена следующая установка Storm (на Ubuntu 16,4 64 бит).Apache Storm Совместимость версии Hbase, java.lang.NoSuchFieldError: HBASE_CLIENT_LIMIT

  • шторм: 0.10.1
  • Hadoop: 2.5.2 (локальный кластер псевдо)
  • Hbase: 1.1.5 (локальный псевдо кластер)
  • Компилятор для баночки: Maven
  • Использования классы поддержки буфера hbase по умолчанию через функцию импорта: org.apache.storm.hbase.bolt.HbaseBolt и mapper.SimpleHBaseMapper.

Я пытаюсь написать болт «Hbase» в направлении базы данных Hbase. В процессе я получаю следующее сообщение об ошибке:

016-07-30 21:06:14.874 b.s.util [ERROR] Async loop died! 
java.lang.NoSuchFieldError: HBASE_CLIENT_PREFETCH_LIMIT 
    at org.apache.hadoop.hbase.client.HConnectionKey.<clinit>(HConnectionKey.java:42) ~[stormjar.jar:?] 
    at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:271) ~[stormjar.j 
ar:?] 
    at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:197) ~[stormjar.jar:?] 
    at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:159) ~[stormjar.jar:?] 
    at org.apache.storm.hbase.common.HBaseClient$1.run(HBaseClient.java:45) ~[storm-hbase-0.10.1.jar:0.10.1] 
    at org.apache.storm.hbase.common.HBaseClient$1.run(HBaseClient.java:42) ~[storm-hbase-0.10.1.jar:0.10.1] 
    at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_91] 

Это выглядит как аналогичный вопрос: http://lucene.472066.n3.nabble.com/CIS-CMMI-3-HBASE-CLIENT-PREFETCH-LIMIT-td4254588.html какие результаты в вопросе совместимости.

В поставленной штормовой HBase банки я могу видеть ссылки, сделанные на: Hbase 0.98.4-hadoop2 и HDFS версия 2.2.0, но в я увидел в П файл поддерживаемого источника Hbase https://github.com/apache/storm/tree/master/external/storm-hbase, что Hbase версия 1.1. 0 поддерживается.

Будет ли моя настройка работать, если я верну свою версию Hbase до 0.98.4-hadoop или выше до версии hbase-0.98.20-hadoop2 или с помощью 1.1.0? Возвращение с 1.1.5 до 1.1.0 кажется странным, хотя и я уже понизил их. Или я должен использовать классы apache.hadoop.hbase? Я сохраняю много кода, использующего эти классы.

В любом случае, пожалуйста, сообщите. Я занимаюсь поиском и устранением неисправностей в течение последних 5 дней без какого-либо процесса.

С наилучшими пожеланиями, Марк

+0

У кого-нибудь есть совет? –

ответ

0

Этой проблема вызвана версией Hbase-клиентом в вашем П, отличающейся от версии баночки на стороне сервера. Если вы используете версии, зависящие от поставщика (например, 1.2.0-cdh5.7.0), то это также должно быть последовательным.

Смежные вопросы