[
https://issues.apache.org/jira/browse/LUCENE-7595?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Uwe Schindler resolved LUCENE-7595.
-----------------------------------
Resolution: Fixed
Fix Version/s: 6.4
master (7.0)
6.x
> RAMUsageTester in test-framework and static field checker no longer works
> with Java 9
> -------------------------------------------------------------------------------------
>
> Key: LUCENE-7595
> URL: https://issues.apache.org/jira/browse/LUCENE-7595
> Project: Lucene - Core
> Issue Type: Bug
> Components: general/test
> Reporter: Uwe Schindler
> Assignee: Uwe Schindler
> Labels: Java9
> Fix For: 6.x, master (7.0), 6.4
>
> Attachments: LUCENE-7595.patch
>
>
> Lucene/Solr tests have a special rule that records memory usage in static
> fields before and after test, so we can detect memory leaks. This check dives
> into JDK classes (like java.lang.String to detect their size). As Java 9
> build 148 completely forbids setAccessible on any runtime class, we have to
> change or disable this check:
> - As first step I will only add the rule to LTC, if we not have Java 8
> - As a second step we might investigate how to improve this
> [~rcmuir] had some ideas for the 2nd point:
> - Don't dive into classes from JDK modules and instead "estimate" the size
> for some special cases (like Strings)
> - Disallow any static field in tests that is not final (constant) and points
> to an Object except: Strings and native (wrapper) types.
> In addition we also have RAMUsageTester, that has similar problems and is
> used to compare estimations of Lucene's calculations of
> Codec/IndexWriter/IndexReader memory usage with reality. We should simply
> disable those tests.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]