Uploaded image for project: 'UIMA'
  1. UIMA
  2. UIMA-1363

Access to individual type index iterators

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 2.3
    • Core Java Framework
    • None
    • Windows XP, LanguageWare

    Description

      UIMA feature structure iterators for a given type always include its subtypes. While this is generally the best thing to do, if an application requires more precise control over the types it needs an ability to iterate over the instances of a specific type only, leaving the subtypes out. In the current UIMA this is not possible to achieve.

      This is especially important for performance as iterating over an aggregate index is vastly more complicated than listing an individual index. In certain real-world scenarios using our AFST engine we are able to achieve close to 20% performance improvement on complete processing pipelines by simply giving the AFST type set iterator access to individual type iterators.

      The attached patch implements a new "ll_leafIterator()" method in LowLevelIndex which returns an iterator over the root type of an index. It also includes a simple alternative to FSIndexRepositoryImpl.PointerIterator for leaf types, also improving the performance when iterating over leaf types.

      Attachments

        1. LeafIteratorPatch.txt
          7 kB
          B Lambov (old handle)

        Issue Links

          Activity

            People

              Unassigned Unassigned
              barnie B Lambov (old handle)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: