RFR: 8175010: ImageReader is not thread-safe
Claes Redestad
claes.redestad at oracle.com
Thu Feb 16 08:47:32 UTC 2017
On 2017-02-16 09:17, Peter Levart wrote:
>> I think your observations about potential issues in JRTFS is correct,
>> but there was nothing to suggest JRTFS code was involved in JDK-8174817
>> (as it's not code that's used by the BuiltinClassLoader).
>
> The only remaining ImageReader.close() invocation is now in
> jdk.internal.jrtfs.SystemImage anonymous inner class delegated from
> SystemImage.close(), which is only called from JrtFileSystem.close() or
> .finalize(). So you think JRTFS is not the source of the problem? What
> if JRTFS is accessing the same image as JavaRuntimeURLConnection in the
> same VM. Different instances of ImageReader would be used for them, but
> they would share the same underlying SharedImageReader. Currently I
> don't see a problem in SharedImageReader code, but I haven't studied it
> carefully yet. Maybe there is something to be found there...
>
Nothing is impossible, there was simply no breadcrumbs to suggest this
was happening. One thing I think we should do to rule this out is to
make sure that the SharedImageReader representing the system image
simply can't be closed, which would really be an error.
/Claes
More information about the jigsaw-dev
mailing list