Justin Bertram reassigned ARTEMIS-1606:

    Assignee: Michael Andre Pearce

> Change AddressInfo RoutingType Set to use EnumSet 
> --------------------------------------------------
>                 Key: ARTEMIS-1606
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1606
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>            Reporter: Michael Andre Pearce
>            Assignee: Michael Andre Pearce
>            Priority: Major
>             Fix For: 2.5.0
> RoutingType is a enum, as such can take advantage of the benefits of EnumSet. 
> Its a specialist set designed for Enum's.
> https://docs.oracle.com/javase/7/docs/api/java/util/EnumSet.html
> https://www.techempower.com/blog/2017/02/14/enumset-and-enummap/
> This will reduce memory footprint due to being many times more compact, this 
> is particularly important as this Address Info and Routing Type sets are in 
> the hot path of message flow. And that there is only two routing types 
> currently so a very small enum.
> Also at the same time to remove the iterator from the getRoutingType which is 
> in the hotpath. Like wise we can avoid it if AddressInfo is constructed with 
> a single RoutingType.

This message was sent by Atlassian JIRA

Reply via email to