lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Simon Willnauer (JIRA)" <>
Subject [jira] [Created] (LUCENE-4492) Immutable Suggester impls. should be immutable
Date Fri, 19 Oct 2012 09:40:11 GMT
Simon Willnauer created LUCENE-4492:

             Summary: Immutable Suggester impls. should be immutable
                 Key: LUCENE-4492
             Project: Lucene - Core
          Issue Type: Wish
          Components: modules/other
    Affects Versions: 4.0, 3.6.1, 4.1
            Reporter: Simon Willnauer
             Fix For: 4.1, 5.0

Currently we have a very clumsy interface to build and load the Suggesters that are immutable.
All our FST impls must be somewhat pre-build and then loaded. But currently the code doesn't
declare the fst member as final and lets you change it at any time. ie you can always call
load / build. This makes safe publication tricky and required custom code to make this reasonable.
Ie. you have as suggester that can reload it's dict every 20 min. Now if you want to swap
this in once loaded you can create a new Lookup instance and assign it to a member in your
app. Yet this member needs to be volatile otherwise threads won't fetch all the memory and
you can run into NPE exceptions since the fst member is not final. I'd not want to pay the
price for this volatile read in a suggest env since its really read-only. 

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message