[ https://issues.apache.org/jira/browse/GROOVY-7783?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John Wagenleitner resolved GROOVY-7783. --------------------------------------- Resolution: Fixed Assignee: John Wagenleitner Fix Version/s: 2.4.7 Thanks for providing the patch, a slightly modified version was applied to both the removeAll and retainAll methods. I have cloned this to create an issue for fixing ObservableSet as well. > Redundant computation in ObservableList > --------------------------------------- > > Key: GROOVY-7783 > URL: https://issues.apache.org/jira/browse/GROOVY-7783 > Project: Groovy > Issue Type: Bug > Components: groovy-runtime > Affects Versions: 2.4.6 > Reporter: Monika Dhok > Assignee: John Wagenleitner > Fix For: 2.4.7 > > Attachments: ObservableList.patch, Test.java > > > There appears to be redundant computaions in "ObservableList.retainAll" > methods in version 2.4.6. I have attached a test and proposed a small > patch which ensures that "contains" method is called on hashset of > input collection. This patch gives 1739X speed up on my > machine for the provided test. > Also, one more possibility to fix the issue is by using TreeSet as suggested > in > https://issues.apache.org/jira/browse/GROOVY-5739 as well. > Similar patches can be applied for three other methods, > ObservableList.removeAll, ObservableSet.retainAll, ObservableSet.removeAll. -- This message was sent by Atlassian JIRA (v6.3.4#6332)