Request for review, thanks!
> On 3 Feb 2021, at 09:29, Bo Zhang
> <[email protected]> wrote:
>
>> Previously, `ImageBufferCache` contains a ThreadLocal field which holds
>> strong reference to `ImageBufferCache$BufferReference.class`. When loaded
>> from `jrt-fs.jar`, this will keep `JrtFileSystemProvider$JrtFsLoader`
>> in memory forever and never being GCed.
>>
>> The fix replace the old `ImageBufferCache$BufferReference` class with
>> `WeakReference<ByteBuffer>`, which is verified by provided test.
>
> Bo Zhang has refreshed the contents of this pull request, and previous
> commits have been removed. The incremental views will show differences
> compared to the previous content of the PR. The pull request contains one new
> commit since the last revision:
>
> 8260621: Avoid memory leak in ImageBufferCache
>
> Previously, `ImageBufferCache` contains a ThreadLocal field which holds
> strong reference to `ImageBufferCache$BufferReference.class`. When loaded
> from `jrt-fs.jar`, this will keep `JrtFileSystemProvider$JrtFsLoader`
> in memory forever and never being GCed.
>
> The fix replace the old `ImageBufferCache$BufferReference` class with
> `WeakReference<ByteBuffer>`, which is verified by provided test.
>
> -------------
>
> Changes:
> - all: https://git.openjdk.java.net/jdk/pull/2307/files
> - new: https://git.openjdk.java.net/jdk/pull/2307/files/8d61d77d..27b55790
>
> Webrevs:
> - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2307&range=01
> - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2307&range=00-01
>
> Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
> Patch: https://git.openjdk.java.net/jdk/pull/2307.diff
> Fetch: git fetch https://git.openjdk.java.net/jdk pull/2307/head:pull/2307
>
> PR: https://git.openjdk.java.net/jdk/pull/2307