The DestinationMap removeAll is removing too many nodes out of the map.
-----------------------------------------------------------------------
Key: AMQ-808
URL: https://issues.apache.org/activemq/browse/AMQ-808
Project: ActiveMQ
Type: Bug
Components: Broker
Versions: 4.0
Reporter: Hiram Chirino
Assigned to: Hiram Chirino
Fix For: 4.1, 4.0.2
This was initially noticed because at times avisoryies stopped working for some
cases. This is due to the way the Region uses a DestinationMap to find all the
destinations that match a subscription.
A unit test that fails looks like:
public void testAddAndRemove() throws Exception {
put("FOO.A", v1);
assertMapValue("FOO.>", v1);
put("FOO.B", v2);
assertMapValue("FOO.>", v1, v2);
Set set = map.removeAll(createDestination("FOO.A"));
assertMapValue("FOO.>", v2); // This Fails. nothing is left in FOO.>
}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira