Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-7783

Redundant computation in ObservableList

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.4.6
    • 2.4.7
    • groovy-runtime
    • None
    • Patch

    Description

      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.

      Attachments

        1. Test.java
          0.7 kB
          Monika Dhok
        2. ObservableList.patch
          0.4 kB
          Monika Dhok

        Issue Links

          Activity

            People

              jwagenleitner John Wagenleitner
              monikadhok Monika Dhok
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: