Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-7071

Can we reeduce excessive byte[] copying in OfflineSorter?

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 6.1, 7.0
    • Component/s: None
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      OfflineSorter, which dimensional points uses heavily in the > 1D case,
      works by reading one partition, a set of N unsorted values, from disk
      and sorting it in memory and writing it out again.

      The sort invokes a provided Comparator on two BytesRef values,
      each of which is fully copied from the ByteBlockPool, when it could
      often reference a slice from the pool instead.

      Another byte[] copy happens when iterating through the sorted values.

      This is an optimization ... I'm targeting 6.1.0 not 6.0.0!

        Attachments

        1. LUCENE-7071.patch
          9 kB
          Michael McCandless

          Activity

            People

            • Assignee:
              mikemccand Michael McCandless
              Reporter:
              mikemccand Michael McCandless
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: