[ https://issues.apache.org/jira/browse/AMQ-7453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17264723#comment-17264723 ]
Anton Roskvist commented on AMQ-7453: ------------------------------------- Well, for my part I have different settings for some different use cases, but it would be something like this: Broker-1 <networkConnectors> <networkConnector name="From-broker-1-to-broker-2" userName="super" password="secret" uri="static:(tcp://broker-2:61616)" messageTTL="5" prefetchSize="10" advisoryPrefetchSize="1000" suppressDuplicateQueueSubscriptions="true" decreaseNetworkConsumerPriority="true" bridgeTempDestinations="false"> </networkConnector> </networkConnectors> Broker-2 <networkConnectors> <networkConnector name="From-broker-2-to-broker-1" userName="super" password="secret" uri="static:(tcp://broker-1:61616)" messageTTL="5" prefetchSize="10" advisoryPrefetchSize="1000" suppressDuplicateQueueSubscriptions="true" decreaseNetworkConsumerPriority="true" bridgeTempDestinations="false"> </networkConnector> </networkConnectors> This is the Simplex setup that has the same issue I mentioned, I see the issue regardless of what network connector configuration options I use though, the common denominator seems to be the mKahaDB Br, Anton > Duplex networkConnector failure with mKahaDB after inactive destinations > deleted > -------------------------------------------------------------------------------- > > Key: AMQ-7453 > URL: https://issues.apache.org/jira/browse/AMQ-7453 > Project: ActiveMQ > Issue Type: Bug > Components: Broker, KahaDB > Affects Versions: 5.15.12 > Environment: Windows 10 Home 64-bit > Java 1.8.0_45-b14 > ActiveMQ 5.15.12 > Reporter: Anthony Kocherov > Assignee: Jean-Baptiste Onofré > Priority: Major > Attachments: bad-activemq-restart.debug.log, bad-activemq.debug.log, > bad-remote-activemq.xml, bad-remote-wrapper.log, good-remote-activemq.xml, > good-remote-wrapper.log, local-activemq.xml > > > Cannot re-establish duplex network connection on remote broker with following > error: > {noformat} > INFO | jvm 1 | 2020/03/21 14:41:32 | ERROR | Failed to create responder end > of duplex network bridge Q-bridge@ID:LHC-59471-1584794492297-0:1 > INFO | jvm 1 | 2020/03/21 14:41:32 | java.lang.IllegalStateException: > PageFile is not loaded > INFO | jvm 1 | 2020/03/21 14:41:32 | at > org.apache.activemq.store.kahadb.disk.page.PageFile.assertLoaded(PageFile.java:906)[activemq-kahadb-store-5.15.12.jar:5.15.12] > ...{noformat} > Remote broker is configured to [delete inactive > destinations|https://activemq.apache.org/delete-inactive-destinations.html] > and uses mKahaDB persistence adapters for different destinations (as > described here: [Automatic Per Destination Persistence > Adapter|https://activemq.apache.org/kahadb]). > Same setup, but single kahaDB persistence adapter on remote broker is not > causing the issue. > See attached files for detailed configuration and logs (configuration allows > to run both brokers on same PC): > * local broker config: [^local-activemq.xml] > * remote broker *bad* config and log (delete inactive dest. + mKahaDB + > perDestination="true"): [^bad-remote-activemq.xml] , [^bad-remote-wrapper.log] > * remote broker *good* config and log (delete inactive dest. + kahaDB): > [^good-remote-activemq.xml] , [^good-remote-wrapper.log] > > *Use case* > Simulate network connection loss and then re-establish duplex communication > after remote broker destinations were purged due to inactivity: > 1. clean installation of > [apache-activemq-5.15.12-bin.zip|https://activemq.apache.org/components/classic/download/] > 2. start remote broker > 3. start local broker > 4. destination queue created automatically on remote (active consumer from > local broker is also shown correctly in web-console) > 5. stop local broker > 6. wait for a while until destination is deleted on remote due to inactivity > 7. start local broker again > Steps 6.-7. can be repeated multiple times with the same result. However, if > required queue is created through web-console on remote broker, duplex bridge > establishes successfully, but as soon as destination is purged, problem > repeats: [^bad-activemq.debug.log] > 8. Problem disappears if remote broker is restarted, but comes back whenever > inactive destinations are purged once again: [^bad-activemq-restart.debug.log] > > *Some observations* > The main difference I see in logs (good vs bad situation), that in bad > situation following messages appear after inactive destinations deleted: > {noformat} > INFO | jvm 1 | 2020/03/22 11:51:20 | INFO | Stopping async queue tasks > INFO | jvm 1 | 2020/03/22 11:51:20 | INFO | Stopping async topic tasks > INFO | jvm 1 | 2020/03/22 11:51:20 | INFO | Stopped KahaDB{noformat} > Since this moment local broker cannot establish duplex connection any more, > and it doesn't matter which destinations have been purged – with the same > name (App.Data) or any other. Also it doesn't matter whether local broker > already had any successful communication with the remote. As soon as these > messages appear, broker cannot "create responder end of duplex network > bridge" because of "PageFile is not loaded". > When I try to do the same with single kahadb instance, these messages do not > appear and no such problem. > > *Links* > Original discussion here: > [http://activemq.2283324.n4.nabble.com/Duplex-networkConnector-error-with-mKahaDB-after-inactive-destinations-deleted-td4755827.html] -- This message was sent by Atlassian Jira (v8.3.4#803005)