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

Uwe Schindler commented on LUCENE-1926:
---------------------------------------

This is also a good isea, even better. It should simply call clearAttributes() 
before each incrementToken(). A real consumer would not do this for speed 
reasons, but the test.

bq. Right but maybe you could have implemented back compat differently, where 
it would appear to work with next() also. Or maybe at some point next() will go 
away?

As you said before, somebody else could also modify the attributes, not only 
the backwards layer. For speed reasons: Preventing this would add an extra 
clone or somehow other copy of the attribute.

next() and next(Token) will go away the next weeks...

> 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, LUCENE-1926.patch
>
>
> 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