Предупреждение ActiveMQ о блокировке базы данных на срок аренды

#activemq

#activemq

Вопрос:

У меня есть немного странное предупреждение от ActiveMQ 5.9.0 с сохранением JDBC, поддерживаемым Oracle…

 WARN  [org.apache.activemq.store.jdbc.LeaseDatabaseLocker] LockableService 
    keep alive period: 2000, which renews the lease, is less than 
    lockAcquireSleepInterval: 1000, the lease duration. 
    These values will allow the lease to expire.
 

Мой вопрос в том, почему LockableService сообщает, что 2000 <1000? Я думаю, что в нем должно быть сказано: «Период действия LockableService: 2000, который продлевает аренду, больше, чем lockAcquireSleepInterval: 1000, продолжительность аренды. Эти значения позволят истечь сроку аренды.». Как вы думаете, может быть, я неправильно читаю…

Я вижу проблему с моими текущими настройками (у меня есть Master и Slave, я выключаю Master, и Slave вступает во владение, но я снова запускаю Master, и он не становится Slave)… Итак, мне, очевидно, нужно настроить свои настройки, вот текущая соответствующая конфигурация…

 <bean id="jdbcPersistenceAdapter" class="org.apache.activemq.store.jdbc.JDBCPersistenceAdapter">
    <property name="brokerName" value="messageCentreBroker" />
    <property name="createTablesOnStartup" value="true" />
    <property name="dataSource" ref="activeMqDataSource" />
    <property name="lockKeepAlivePeriod" value="2000" />
    <property name="locker" ref="leaseDatabaseLocker" />
</bean>
<bean id="leaseDatabaseLocker" class="org.apache.activemq.store.jdbc.LeaseDatabaseLocker">
    <property name="lockAcquireSleepInterval" value="1000" />
</bean>
 

Итак, я предполагаю, что мой lockAcquireSleepInterval должен быть больше 2000? Я попробую это, но мне тоже интересно услышать мысли о ПРЕДУПРЕЖДАЮЩЕМ сообщении, это кажется неправильным?

Комментарии:

1. да, без сомнения, это просто опечатка, я изменил свои настройки, чтобы иметь lockKeepAlivePeriod 7000 и lockAcquireSleepInterval 14000, что на самом деле отлично сработало для меня…

Ответ №1:

Я думаю, что это просто опечатка. Больше ничего.