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

Dawid Weiss commented on LUCENE-5787:
-------------------------------------

I changed my mind; synthetic fields may be actually useful to capture (in case 
of some awkward compiler generated stuff we do want to include these, unless 
explicitly excluded).

I think Uwe's idea is better -- an annotation to exclude whatever needs to be 
excluded. I'd make it more flexible by specifying a list of filter classes 
(much like we do with leak thread exclusions); this allows people to write code 
to exclude whatever they need.

> LuceneTestCase static leak checker interferes with Groovy unit tests
> --------------------------------------------------------------------
>
>                 Key: LUCENE-5787
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5787
>             Project: Lucene - Core
>          Issue Type: Bug
>    Affects Versions: 4.7, 4.8.1
>         Environment: Maven 3.0.5
> JUnit 4.11
>            Reporter: John Gibson
>
> {{LuceneTestCase}}'s static memory leak checker can break Groovy subclasses. 
> Specifically, Groovy classes have a synthetic static member variable of type 
> {{org.codehaus.groovy.reflection.ClassInfo}}. If this variable grows too 
> large then LTC will fail the test. Because the variable is added by the 
> Groovy runtime instead of by the developer there is no way for the developer 
> to clear the field themselves.
> Also note that the static leak checker does not ignore memory held by soft or 
> weak references. These should be ignored because the memory retained by such 
> fields will be reclaimed instead of triggering OutOfMemoryErrors.
> Note that because LTC is a base class for Solr's testing support classes this 
> also affects {{SolrTestCaseJ4}} and {{AbstractSolrTestCase}}.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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

Reply via email to