[ 
https://issues.apache.org/jira/browse/LUCENE-1607?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yonik Seeley updated LUCENE-1607:
---------------------------------

    Attachment: LUCENE-1607.patch

Here's a slightly updated patch (javadoc and StringHelper.intern() convenience 
method).

The method of plugging a different StringInterner implementation would be to 
simply assign to the static in StringHelper.

{code}
  /**
   * Expert:
   * The StringInterner implementation used by Lucene.
   * This should never be changed after other Lucene APIs have been used.
   */
  public static StringInterner interner = new SimpleStringInterner(1024,8);
{code}

Are people comfortable with this approach?  How about the defaults?  This 
should speed up anyone with under thousands of field, and only slightly slow 
down someone with over thousands of fields (until they plugged in a new 
interner with a bigger table size).



> String.intern() faster alternative
> ----------------------------------
>
>                 Key: LUCENE-1607
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1607
>             Project: Lucene - Java
>          Issue Type: Improvement
>            Reporter: Earwin Burrfoot
>             Fix For: 2.9
>
>         Attachments: intern.patch, LUCENE-1607.patch, LUCENE-1607.patch, 
> LUCENE-1607.patch, LUCENE-1607.patch, LUCENE-1607.patch, LUCENE-1607.patch, 
> LUCENE-1607.patch, LUCENE-1607.patch
>
>
> By using our own interned string pool on top of default, String.intern() can 
> be greatly optimized.
> On my setup (java 6) this alternative runs ~15.8x faster for already interned 
> strings, and ~2.2x faster for 'new String(interned)'
> For java 5 and 4 speedup is lower, but still considerable.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to