[ 
https://issues.apache.org/jira/browse/LUCENE-6973?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15101559#comment-15101559
 ] 

Uwe Schindler commented on LUCENE-6973:
---------------------------------------

I also agree that language tag (because they are "standardized") would better 
match. For LTC there is no backwards problem, and the one here is new. But we 
should also review Solr code where it tries to parse Locale names.

So I think we should also open a separate issue:
- let LTC print the language tag instead of toString() on failures
- make LTC parse the input locale using the builder that throws exception.

For the current factory, we should use the non-lenient variant with 
Locale.Builder. Because resolving "en_US" to the root locale is a no-go.

> Improve TeeSinkTokenFilter
> --------------------------
>
>                 Key: LUCENE-6973
>                 URL: https://issues.apache.org/jira/browse/LUCENE-6973
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Shai Erera
>            Assignee: Shai Erera
>            Priority: Minor
>             Fix For: 5.5, Trunk
>
>         Attachments: LUCENE-6973.patch, LUCENE-6973.patch, LUCENE-6973.patch, 
> LUCENE-6973.patch, LUCENE-6973.patch, LUCENE-6973.patch, LUCENE-6973.patch
>
>
> {{TeeSinkTokenFilter}} can be improved in several ways, as it's written today:
> The most major one is removing {{SinkFilter}} which just doesn't work and is 
> confusing. E.g., if you set a {{SinkFilter}} which filters tokens, the 
> attributes on the stream such as {{PositionIncrementAttribute}} are not 
> updated. Also, if you update any attribute on the stream, you affect other 
> {{SinkStreams}} ... It's best if we remove this confusing class, and let 
> consumers reuse existing {{TokenFilters}} by chaining them to the sink stream.
> After we do that, we can make all the cached states a single (immutable) 
> list, which is shared between all the sink streams, so we don't need to keep 
> many references around, and also deal with {{WeakReference}}.
> Besides that there are some other minor improvements to the code that will 
> come after we clean up this class.
> From a backwards-compatibility standpoint, I don't think that {{SinkFilter}} 
> is actually used anywhere (since it just ... confusing and doesn't work as 
> expected), and therefore I believe it won't affect anyone. If however someone 
> did implement a {{SinkFilter}}, it should be trivial to convert it to a 
> {{TokenFilter}} and chain it to the {{SinkStream}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to