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

ICU collator thread-safety issues

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 3.1, 4.0-ALPHA
    • modules/analysis
    • None
    • New, Patch Available

    Description

      The ICU Collators (unlike the JDK ones) aren't thread safe: http://userguide.icu-project.org/collation/architecture , a little non-obvious since its not mentioned
      in the javadocs, and its not clear if the docs apply to only the C code, but i looked
      at the source and there is all kinds of internal state.

      So in my opinion, we should clone the icu collators (which are passed in from the outside)
      when creating a new TokenStream/AttributeImpl to prevent problems. This shouldn't be a big
      deal since everything uses reusableTokenStream anyway.

      Attachments

        1. LUCENE-2943.patch
          9 kB
          Robert Muir
        2. LUCENE-2943.patch
          3 kB
          Robert Muir
        3. LUCENE-2943.patch
          2 kB
          Robert Muir

        Activity

          People

            Unassigned Unassigned
            rcmuir Robert Muir
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: