[
https://issues.apache.org/jira/browse/QPID-1802?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robbie Gemmell resolved QPID-1802.
----------------------------------
Resolution: Fixed
Closing out old issue.
> [Java broker] failure to startup when recovering persistent messages from
> store for a queue in the configuration file which was not previously added to
> the store
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: QPID-1802
> URL: https://issues.apache.org/jira/browse/QPID-1802
> Project: Qpid
> Issue Type: Bug
> Components: Java Broker
> Affects Versions: 0.5
> Reporter: Robbie Gemmell
> Assignee: Robbie Gemmell
> Fix For: 0.6
>
> Attachments: test-store_after_restart.zip,
> test-store_before_restart.zip
>
>
> This seems similar to QPID-1730, but raising new JIRA as that is currently
> ready to review, and the files in question have since been modified for other
> issues so this could be new.
> Steps taken:
> Start broker (trunk, r763963) configured to use BDB message store (r3265)
> with the persistent_config.xml.
> Start JMS Direct example consumer, having modified 'direct.properties' file
> to use the 'ping' queue configured on the 'test' virtualhost in
> virtualhosts.xml
> Terminate consumer.
> Start modified JMS Direct example producer, send '100' (so actually 101 with
> the completion message) persistent messages
> Shutdown broker
> Restart broker
> Result:
> 2009-04-10 16:48:57,688 WARN [main] management.JMXManagedObjectRegistry
> (JMXManagedObjectRegistry.java:187) - Starting JMX ConnectorServer on port
> '8999' (+9099) with SSL
> Error initialising message broker: org.apache.qpid.AMQException: Error
> recovering persistent state: org.apache.qpid.AMQException: Error registering
> managed object ping[Queue]: javax.management.InstanceAlreadyExistsException:
> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=test,name=ping,version=2org.apache.qpid.AMQException:
> Error recovering persistent state: org.apache.qpid.AMQException: Error
> registering managed object ping[Queue]:
> javax.management.InstanceAlreadyExistsException:
> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=test,name=ping,version=2
> 2009-04-10 16:48:58,436 ERROR [main] server.Main (Main.java:204) - Error
> initialising message broker: org.apache.qpid.AMQException: Error recovering
> persistent state: org.apache.qpid.AMQException: Error registering managed
> object ping[Queue]: javax.management.InstanceAlreadyExistsException:
> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=test,name=ping,version=2
> at
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore.recover(BDBMessageStore.java:1283)
> at
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore.configure(BDBMessageStore.java:247)
> at
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore.configure(BDBMessageStore.java:211)
> at
> org.apache.qpid.server.virtualhost.VirtualHost.initialiseTransactionLog(VirtualHost.java:299)
> at
> org.apache.qpid.server.virtualhost.VirtualHost.<init>(VirtualHost.java:221)
> at
> org.apache.qpid.server.virtualhost.VirtualHost.<init>(VirtualHost.java:162)
> at
> org.apache.qpid.server.registry.ConfigurationFileApplicationRegistry.initialiseVirtualHosts(ConfigurationFileApplicationRegistry.java:71)
> at
> org.apache.qpid.server.registry.ConfigurationFileApplicationRegistry.initialise(ConfigurationFileApplicationRegistry.java:63)
> at
> org.apache.qpid.server.registry.ApplicationRegistry.initialise(ApplicationRegistry.java:100)
> at
> org.apache.qpid.server.registry.ApplicationRegistry.initialise(ApplicationRegistry.java:88)
> at org.apache.qpid.server.Main.startup(Main.java:269)
> at org.apache.qpid.server.Main.execute(Main.java:193)
> at org.apache.qpid.server.Main.<init>(Main.java:93)
> at org.apache.qpid.server.Main.main(Main.java:440)
> Caused by: org.apache.qpid.AMQException: Error registering managed object
> ping[Queue]: javax.management.InstanceAlreadyExistsException:
> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=test,name=ping,version=2
> at
> org.apache.qpid.server.management.DefaultManagedObject.register(DefaultManagedObject.java:76)
> at
> org.apache.qpid.server.queue.SimpleAMQQueue.<init>(SimpleAMQQueue.java:151)
> at
> org.apache.qpid.server.queue.SimpleAMQQueue.<init>(SimpleAMQQueue.java:117)
> at
> org.apache.qpid.server.queue.AMQQueueFactory.createAMQQueueImpl(AMQQueueFactory.java:71)
> at
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore.deliverMessages(BDBMessageStore.java:1645)
> at
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore.recover(BDBMessageStore.java:1269)
> ... 13 more
> Caused by: javax.management.InstanceAlreadyExistsException:
> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=test,name=ping,version=2
> at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:453)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1484)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:963)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:917)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:312)
> at
> com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:482)
> at
> org.apache.qpid.server.management.JMXManagedObjectRegistry.registerObject(JMXManagedObjectRegistry.java:314)
> at
> org.apache.qpid.server.management.DefaultManagedObject.register(DefaultManagedObject.java:72)
> ... 18 more
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]