[ https://issues.apache.org/jira/browse/ARTEMIS-1112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15988839#comment-15988839 ]
ASF GitHub Bot commented on ARTEMIS-1112: ----------------------------------------- Github user bgutjahr commented on the issue: https://github.com/apache/activemq-artemis/pull/1204 I had also thought about putting the start call into thread. But that would lead to a lifecyclt issue. Since EmbeddedServer start() and stop() methods are synchronized, I won't be able to stop a backup server before it became live. I have started looking a bit more into Artemis code. So far I have just added an option to the shared-store master configuration, prelimilarily named 'allow-as-backup'. This approach appeared a (little) bit easier than adding a new policy class. > EmbeddedJMS.start() doesn't return if shared-store master starts as backup > server > --------------------------------------------------------------------------------- > > Key: ARTEMIS-1112 > URL: https://issues.apache.org/jira/browse/ARTEMIS-1112 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker > Affects Versions: 1.5.4, 2.0.0 > Reporter: Bernd Gutjahr > Priority: Minor > Fix For: 2.next > > > EmbeddedServer.start() doesn't return when a share-store master server has > been configured, but at startup another server is already running as live > server (i.e. another previously started master). > In that case, this server becomes a backup server for the currently running > live server. The start() method hangs until the currently running live server > stops and this server actually becomes the new live server. > This is inconsistent with starting a server as slave server, where the start > method returns and doesn't wait until the slave took over as live server. > It also blocks the application that called EmbeddedServer.start() to proceed > it's normal operation. -- This message was sent by Atlassian JIRA (v6.3.15#6346)