CachingTokenFilter can cause close() to be called twice.
--------------------------------------------------------

                 Key: LUCENE-3089
                 URL: https://issues.apache.org/jira/browse/LUCENE-3089
             Project: Lucene - Java
          Issue Type: Bug
            Reporter: Robert Muir


In LUCENE-3064, we added some state and checks to MockTokenizer to validate 
that consumers
are properly using the tokenstream workflow (described here: 
http://lucene.apache.org/java/3_0_3/api/core/org/apache/lucene/analysis/TokenStream.html)

One problem I noticed in 
TestTermVectorsWriter.testEndOffsetPositionWithCachingTokenFilter is that 
providing a CachingTOkenFilter directly will result
in close() being called twice on the underlying tokenstream... this seems wrong.

Some ideas to fix this could be:
# CachingTokenFilter overrides close() and we document that you must close the 
underlying stream yourself. I think this is what the queryparser does anyway.
# CachingTokenFilter does something tricky to ensure it only closes the 
underlying stream once.


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

Reply via email to