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

Robert Muir commented on LUCENE-1926:
-------------------------------------

{quote}
The attributes API does not guarantee, that the attributes are preserved 
between calls to incrementToken
{quote}

Uwe, perhaps this is my understanding then. Its not obvious from the 
documentation that incrementToken will erase my attributes.

TokenStream now extends AttributeSource, which provides
 access to all of the token Attributes for the TokenStream.
 Note that only one instance per AttributeImpl is created and reused
 for every token. This approach reduces object creation and allows local
 caching of references to the AttributeImpls.

What else is "local caching of references to the AttributeImpls" supposed to 
mean?

btw, my TestCase uses StandardTokenizer, which does call clearAttributes().


> Back compat break with old next() consumer API
> ----------------------------------------------
>
>                 Key: LUCENE-1926
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1926
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Analysis
>    Affects Versions: 2.9
>            Reporter: Robert Muir
>         Attachments: CaptureStateTestcase.java
>
>
> There is a bug that causes tokenstreams to return different results, 
> depending upon whether they are consumed with the incrementToken() api or the 
> next() api.
> I found this because the Solr analysis tool in the admin page uses the next() 
> api, and i was seeing strange results.
> I've created a test case to show the problem. when calling captureState(),  
> the current state is erased, but only when consuming with the next() api.
> If I consume with incrementToken(), things work. 
> {code}
> State tempState = captureState(); // after we capture state here, things get 
> strange.
> String right = termAtt.term(); // when using old consumer API, this value is 
> wrong!!!!
> {code}

-- 
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