2015-01-23 4 views
3

У меня есть проект интеграции весны, используя spring-hadoop. У меня есть шаблон Hbase следующим образом,trap Spring context close error

<beans:bean id="fsh" class="org.springframework.data.hadoop.fs.FsShell"> 
</beans:bean> 

<beans:bean id="hbaseTemplate" 
    class="org.springframework.data.hadoop.hbase.HbaseTemplate"> 
    <beans:property name="configuration" ref="hdpConfiguration" /> 
</beans:bean> 

Теперь, когда я выключить приложение и контекст в конце концов, он бросает странную ошибку,

oahhbase.client.HConnectionManager: Подключение не найден в списке, не может удалить его (ключ подключения = HConnectionKey {properties = {hbase.zookeeper.quorum = xxx.com, xxx.com, hbase.rpc.timeout = 60000, hbase.client.prefetch.limit = 10, hbase.zookeeper.property.clientPort = 2181, zookeeper.znode.parent =/hbase-secure, hbase.client.retries.number = 35, hbase.client.pause = 100}, username='[email protected] «}). Может быть, ключ был изменен?

Как я понимаю, это была безобидная ошибка, и был брошен даже в Hadoop 1.x

Я мигрировали в Hadoop 2.x и Спринг-Hadoop-2.0.4 Но теперь, весна бросает исключение, которое ранее не было брошено,

java.lang.Exception: нуль в org.apache.hadoop.hbase.client.HConnectionManager.deleteConnection (HConnectionManager.java:488) в org.apache.hadoop .hbase.client.HConnectionManager.deleteConnection (HConnectionManager. Java: 424) на org.springframework.data.hadoop.hbase.HbaseConfigurationFactoryBean.destroy (HbaseConfigurationFactoryBean.java:80) на org.springframework.beans.factory.support.DisposableBeanAdapter.destroy (DisposableBeanAdapter.java:258) на org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroyBean (DefaultSingletonBeanRegistry.java:578) на org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingleton (DefaultSingletonBeanRegistry.java:554) на org.springframework.beans. factory.support.DefaultListableBeanFactory.destroySingleton (DefaultListableBeanFactory.java:907) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingletons (DefaultSingletonBeanRegistry.java:523) a т org.springframework.beans.factory.support.DefaultListableBeanFactory.destroySingletons (DefaultListableBeanFactory.java:914) на org.springframework.context.support.AbstractApplicationContext.destroyBeans (AbstractApplicationContext.java:908) в org.springframework.context.support .AbstractApplicationContext.doClose (AbstractApplicationContext.java:884) at org.springframework.context.support.AbstractApplicationContext $ 1.run (AbstractApplicationContext.java:804) 2015-01-22 14: 58: 20.168 INFO --- [Thread- 11] ossconcurrent.ThreadPoolTaskExecutor: выключение ExecutorService 2015-01-22 14: 58: 20.170 INFO --- [Thread-11] osscThreadPoolTaskScheduler: выключение ExecutionService 'taskScheduler' 2015-01-22 14: 58: 20.175 INFO --- [Thread-2] j.LocalContainerEntityManagerFactoryBean Закрытие JPA EntityManagerFactory для единицы сохранения «по умолчанию»

вопроса, как я могу ловушку этой ошибка, так что это не показана пользователю ...

Спасибо за любую проницательность.

+0

Я создал https://jira.spring.io/browse/SHDP- 470, чтобы отслеживать и исследовать это. –

ответ

3

Я был в состоянии устранить ошибку, просто установив удалить-соединение с ложным, (по умолчанию это «истина»)

<hbase-configuration configration-ref="hdpConfiguration" delete-connection="false"/> 
+0

О какой конфигурации вы говорите? –