Lucene - Core
  1. Lucene - Core
  2. LUCENE-2551

change jdk & icu collation to use byte[]

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.0-ALPHA
    • Component/s: modules/analysis
    • Labels:
      None
    • Lucene Fields:
      New, Patch Available

      Description

      Now that term is byte[], we should switch collation to use byte[] instead of 'indexablebinarystring'.

      This is faster and results in much smaller sort keys.

      I figure we can work it out here, and fix termrangequery to use byte in parallel, but we can already test sorting etc now.

      1. LUCENE-2551.patch
        32 kB
        Robert Muir
      2. LUCENE-2551.patch
        23 kB
        Robert Muir

        Issue Links

          Activity

          Hide
          Robert Muir added a comment -

          Committed revision 1075210.

          Show
          Robert Muir added a comment - Committed revision 1075210.
          Hide
          Robert Muir added a comment -

          I looked at some of the keys in the test code, and encoding directly as byte results in keys nearly 1/2 the size (in bytes) of the previous encoding.

          Show
          Robert Muir added a comment - I looked at some of the keys in the test code, and encoding directly as byte results in keys nearly 1/2 the size (in bytes) of the previous encoding.
          Hide
          Robert Muir added a comment -

          Updated patch, with javadocs, and attributefactory violations corrected.

          I think this patch is ready, but we should probably fix a few things (TermRangeQuery, QueryParser should consume with BytesRef not string) first.

          Show
          Robert Muir added a comment - Updated patch, with javadocs, and attributefactory violations corrected. I think this patch is ready, but we should probably fix a few things (TermRangeQuery, QueryParser should consume with BytesRef not string) first.
          Hide
          Robert Muir added a comment -

          attached is a quick prototype.

          I kept the old representation working via Version. if you use >= 4.0, it just encodes to byte.

          I figure this has enough violations that Uwe will jump in and help

          Show
          Robert Muir added a comment - attached is a quick prototype. I kept the old representation working via Version. if you use >= 4.0, it just encodes to byte. I figure this has enough violations that Uwe will jump in and help

            People

            • Assignee:
              Unassigned
              Reporter:
              Robert Muir
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development