Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8175261

Per-protocol cache setting not working for JAR URLConnection

    XMLWordPrintable

Details

    • b159
    • generic
    • generic
    • Verified

    Backports

      Description

        Comment from JDK-8163449 reporter:

        I'm afraid that the current fix is not sufficient for JARUrlConnection.

        The problem is that sun.net.www.protocol.jar.JarURLConnection passes all of the [g|s]et[Default]UseCaches() method calls to the wrapped URLConnection which is an instance of FileURLConnection. This means any attempt to control caching for just JAR URLs fails. "jar" always ends up being treated like "file" which is exactly the case we are trying to avoid. We want "file" to cache for performance but we don't want "jar" to cache so we can avoid the associated file locking issues.

        Simple test here:
        https://github.com/markt-asf/memory-leaks/blob/master/src/org/apache/markt/leaks/net/TestJava9CacheFix.java

        Expected oputput:
        true
        true
        false
        false

        Actual Output :
        true
        true
        true
        true

        Attachments

          Issue Links

            Activity

              People

                chegar Chris Hegarty
                akolarkunnu Abdul Kolarkunnu
                Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: