This is an automated email from the ASF dual-hosted git repository.
vavrtom pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/qpid-broker-j.git
The following commit(s) were added to refs/heads/main by this push:
new 34888c986d QPID-8753: [Broker-J] Stabilize intermittent BDB
MultiNodeTest (#427)
34888c986d is described below
commit 34888c986d446e73041e1e5b7bb11e72e61a63cf
Author: Daniil Kirilyuk <[email protected]>
AuthorDate: Fri Aug 28 10:42:08 2026 +0200
QPID-8753: [Broker-J] Stabilize intermittent BDB MultiNodeTest (#427)
---
.../berkeleydb/replication/GroupBrokerAdmin.java | 20 +++++++++-----------
.../store/berkeleydb/replication/MultiNodeTest.java | 8 +++-----
2 files changed, 12 insertions(+), 16 deletions(-)
diff --git
a/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/GroupBrokerAdmin.java
b/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/GroupBrokerAdmin.java
index 9e4a866e6a..e1efe7a377 100644
---
a/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/GroupBrokerAdmin.java
+++
b/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/GroupBrokerAdmin.java
@@ -322,18 +322,16 @@ public class GroupBrokerAdmin
attributes);
}
- public void awaitRemoteNodeRole(final int amqpPort, final int
remoteAmqpPort, final String... role)
+ public Object awaitRemoteNodeRole(final int amqpPort, final int
remoteAmqpPort, final String... role)
{
-
- GroupMember member = getMemberByAmqpPort(amqpPort);
- GroupMember member2 = getMemberByAmqpPort(remoteAmqpPort);
- member.getAdmin().awaitAttributeValue(WAIT_LIMIT,
- true,
- member.getName() + "/" +
member2.getName(),
- AMQP_REMOTE_NODE_TYPE,
- BDBHARemoteReplicationNode.ROLE,
- ROLE_REPLICA,
- ROLE_MASTER);
+ final GroupMember member = getMemberByAmqpPort(amqpPort);
+ final GroupMember member2 = getMemberByAmqpPort(remoteAmqpPort);
+ return member.getAdmin().awaitAttributeValue(WAIT_LIMIT,
+ true,
+ member.getName() + "/" +
member2.getName(),
+ AMQP_REMOTE_NODE_TYPE,
+
BDBHARemoteReplicationNode.ROLE,
+ (Object[]) role);
}
private SpawnBrokerAdmin getNodeAdmin(final int amqpPort)
diff --git
a/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/MultiNodeTest.java
b/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/MultiNodeTest.java
index c6728f3862..0447636231 100644
---
a/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/MultiNodeTest.java
+++
b/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/MultiNodeTest.java
@@ -369,10 +369,8 @@ public class MultiNodeTest extends GroupJmsTestBase
_failoverListener = new FailoverAwaitingListener();
getJmsProvider().addGenericConnectionListener(connection,
_failoverListener);
- getBrokerAdmin().awaitRemoteNodeRole(activeBrokerPort,
inactiveBrokerPort, "REPLICA");
- Map<String, Object> attributes =
getBrokerAdmin().getRemoteNodeAttributes(activeBrokerPort, inactiveBrokerPort);
- assertEquals("REPLICA", attributes.get(BDBHAVirtualHostNode.ROLE),
- "Inactive broker has unexpected role");
+ final Object role =
getBrokerAdmin().awaitRemoteNodeRole(activeBrokerPort, inactiveBrokerPort,
"REPLICA");
+ assertEquals("REPLICA", role, "Inactive broker has unexpected role");
getBrokerAdmin().setRemoteNodeAttributes(activeBrokerPort,
inactiveBrokerPort,
@@ -381,7 +379,7 @@ public class MultiNodeTest extends GroupJmsTestBase
_failoverListener.awaitFailoverCompletion(FAILOVER_COMPLETION_TIMEOUT);
LOGGER.info("Listener has finished");
- attributes = getBrokerAdmin().getNodeAttributes(inactiveBrokerPort);
+ final Map<String, Object> attributes =
getBrokerAdmin().getNodeAttributes(inactiveBrokerPort);
assertEquals("MASTER", attributes.get(BDBHAVirtualHostNode.ROLE),
"Inactive broker has unexpected role");
assumeTrue(Utils.produceConsume(connection, queue), "Message should be
produced and consumed");
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]