[
https://issues.apache.org/jira/browse/LUCENE-3042?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13023384#comment-13023384
]
Uwe Schindler commented on LUCENE-3042:
---------------------------------------
I found the bug, its totally confusing but is a design error in the state
caching originated by Michael Busch:
- Tokenizer and all Filters share the same Map instances for the attributes
- BUT: Tokenizer and every filter have its own cached state
- if you call clearAttributes on the filter, it clears its own state, but not
the one of its parent tokenizer
- if tokenizer calls clearAttributes, nothing is done
Fix is to make the AttributeSourcesnot only share the maps, but also the state
> AttributeSource can have an invalid computed state
> --------------------------------------------------
>
> Key: LUCENE-3042
> URL: https://issues.apache.org/jira/browse/LUCENE-3042
> Project: Lucene - Java
> Issue Type: Bug
> Reporter: Robert Muir
> Assignee: Uwe Schindler
>
> If you work a tokenstream, consume it, then reuse it and add an attribute to
> it, the computed state is wrong.
> thus for example, clearAttributes() will not actually clear the attribute
> added.
> So in some situations, addAttribute is not actually clearing the computed
> state when it should.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]