activemq的leveldb有脏数据,导致activemq集群一只主从切换

来源:互联网 发布:城觅 网络异常 编辑:程序博客网 时间:2024/06/07 09:30

mq版本5.13.2,是3台mq配合zookeeper组成的集群

出现异常之前手动停止了mq集群,停止的时候有生产者在生产消息

启动集群后,有脏数据的mq的leveldb就同步到了整个集群,导致一只出现主从切换,只能删除所有leveldb才能恢复,求教大神们,怎么解决或规避

2016-10-11 21:16:10,058 | INFO  | Stopping BrokerService[activemq-server08] due to exception, java.io.EOFException: File '/app/activemq/activemq-server02/data/leveldb/0000000578166746.log' offset: 105156531 | org.apache.activemq.util.DefaultIOExceptionHandler | LevelDB IOException handler.

2016-10-11 21:16:10,065 | INFO  | Apache ActiveMQ 5.13.2 (activemq-server08, ID:vd23nlmq02-37109-1476191739079-0:1) is shutting down | org.apache.activemq.broker.BrokerService | IOExceptionHandler: stopping BrokerService[activemq-server08]

2016-10-11 21:16:10,098 | WARN  | ERROR Rolling back disconnected client's transactions:  | org.apache.activemq.broker.TransactionBroker | ActiveMQ BrokerService[activemq-server08] Task-3

2016-10-11 21:16:10,109 | WARN  | ERROR Rolling back disconnected client's transactions:  | org.apache.activemq.broker.TransactionBroker | ActiveMQ BrokerService[activemq-server08] Task-3

2016-10-11 21:16:10,133 | WARN  | ERROR Rolling back disconnected client's transactions:  | org.apache.activemq.broker.TransactionBroker | ActiveMQ BrokerService[activemq-server08] Task-3

2016-10-11 21:16:10,137 | INFO  | Connector openwire stopped | org.apache.activemq.broker.TransportConnector | IOExceptionHandler: stopping BrokerService[activemq-server08]

2016-10-11 21:16:10,155 | INFO  | Stopped LevelDB[/app/activemq/activemq-server02/data/leveldb] | org.apache.activemq.leveldb.LevelDBStore | LevelDB IOException handler.

2016-10-11 21:16:10,160 | ERROR | org.apache.activemq.broker.region.cursors.QueueStorePrefetch@7946c637:ActiveMQ.DLQ,batchResetNeeded=false,size=318,cacheEnabled=false,maxBatchSize:200,hasSpace:true,pendingCachedIds.size:0,lastSyncCachedId:null,lastSyncCachedId-seq:null,lastAsyncCachedId:null,lastAsyncCachedId-seq:null,store=LevelDBMessageStore(queue://ActiveMQ.DLQ,121) - Failed to fill batch | org.apache.activemq.broker.region.cursors.AbstractStoreCursor | ActiveMQ Broker[activemq-server08] Scheduler

2016-10-11 21:16:10,162 | ERROR | org.apache.activemq.broker.region.cursors.QueueStorePrefetch@7946c637:ActiveMQ.DLQ,batchResetNeeded=false,size=318,cacheEnabled=false,maxBatchSize:200,hasSpace:true,pendingCachedIds.size:0,lastSyncCachedId:null,lastSyncCachedId-seq:null,lastAsyncCachedId:null,lastAsyncCachedId-seq:null,store=LevelDBMessageStore(queue://ActiveMQ.DLQ,121) - Failed to fill batch | org.apache.activemq.broker.region.cursors.AbstractStoreCursor | ActiveMQ Broker[activemq-server08] Scheduler

2016-10-11 21:16:10,164 | ERROR | Problem retrieving message for browse | org.apache.activemq.broker.region.Queue | ActiveMQ Broker[activemq-server08] Scheduler

2016-10-11 21:16:10,216 | INFO  | StateChangeDispatcher terminated. | org.apache.activemq.leveldb.replicated.groups.ZKClient | ZooKeeper state change dispatcher thread

2016-10-11 21:16:10,220 | WARN  | Unexpected session error: java.io.IOException: Connection reset by peer | org.apache.activemq.leveldb.replicated.MasterLevelDBStore | hawtdispatch-DEFAULT-3

2016-10-11 21:16:10,220 | WARN  | Unexpected session error: java.io.IOException: Connection reset by peer | org.apache.activemq.leveldb.replicated.MasterLevelDBStore | hawtdispatch-DEFAULT-2

2016-10-11 21:16:10,222 | INFO  | Slave has disconnected: bc1c8870-8ae5-4098-b467-5774675f3de8 | org.apache.activemq.leveldb.replicated.MasterLevelDBStore | hawtdispatch-DEFAULT-1

2016-10-11 21:16:10,222 | INFO  | Slave has disconnected: 3eb2a1cc-ac99-4ad3-964e-6392ca788fe9 | org.apache.activemq.leveldb.replicated.MasterLevelDBStore | hawtdispatch-DEFAULT-2

原创粉丝点击