Re: RFR: 8263506: Make sun.net.httpserver.UnmodifiableHeaders unmodifiable [v3]

2021-03-31 Thread Julia Boes
> The fix makes the map in sun.net.httpserver.UnmodifiableHeaders unmodifiable 
> by wrapping it in an unmodifiable view.

Julia Boes has updated the pull request incrementally with one additional 
commit since the last revision:

  move constructor call in ExchangeImpl and fix indentation

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3032/files
  - new: https://git.openjdk.java.net/jdk/pull/3032/files/fcdfb182..8981b444

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3032&range=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3032&range=01-02

  Stats: 52 lines in 2 files changed: 0 ins; 8 del; 44 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3032.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3032/head:pull/3032

PR: https://git.openjdk.java.net/jdk/pull/3032


Re: RFR: 8264048: Fix caching in Jar URL connections when an entry is missing

2021-03-31 Thread Daniel Fuchs
On Tue, 30 Mar 2021 11:30:48 GMT, Aleksei Efimov  wrote:

> Current fix tries to tackle an issue with URL connection referencing 
> non-existing Jar file entries:
> If an entry that doesn't exist is specified in an URL connection the 
> underlying Jar file is still cached even if an exception is thrown after 
> that. Such behavior prevents the caller, for instance, a `URLClassLoader`, 
> from closing a Jar file.
> 
> The proposed fix checks if entry exists before caching a Jar file (only for 
> cases with enabled caching):
> - If entry exists - jar file is cached if it wasn't cached before
> - If entry doesn't exist and jar file wasn't cached before - jar file is 
> closed and exception is thrown
> - If entry doesn't exist and jar file was cached before - jar file is kept 
> cached and exception is thrown
> 
> 
> The following tests have been used to verify the fix:
> - New regression tests
> - ``:jdk_core:`` tests
> - `api/java_util`,`api/java_net` JCK tests

Hi Aleksei, thanks for putting this together.

`test/jdk/sun/misc/URLClassPath/RemoveJar.java` seems to be an older version of 
`test/jdk/java/net/URLClassLoader/RemoveJar.java`. The two tests are almost 
identical - so `test/jdk/sun/misc/URLClassPath/RemoveJar.java` can probably be 
removed from the PR.

Otherwise the proposed changes look good to me.

-

PR: https://git.openjdk.java.net/jdk/pull/3263


Re: RFR: 8263506: Make sun.net.httpserver.UnmodifiableHeaders unmodifiable [v3]

2021-03-31 Thread Daniel Fuchs
On Wed, 31 Mar 2021 10:51:40 GMT, Julia Boes  wrote:

>> The fix makes the map in sun.net.httpserver.UnmodifiableHeaders unmodifiable 
>> by wrapping it in an unmodifiable view.
>
> Julia Boes has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   move constructor call in ExchangeImpl and fix indentation

LGTM

-

Marked as reviewed by dfuchs (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/3032


Re: RFR: 8264048: Fix caching in Jar URL connections when an entry is missing [v2]

2021-03-31 Thread Aleksei Efimov
> Current fix tries to tackle an issue with URL connection referencing 
> non-existing Jar file entries:
> If an entry that doesn't exist is specified in an URL connection the 
> underlying Jar file is still cached even if an exception is thrown after 
> that. Such behavior prevents the caller, for instance, a `URLClassLoader`, 
> from closing a Jar file.
> 
> The proposed fix checks if entry exists before caching a Jar file (only for 
> cases with enabled caching):
> - If entry exists - jar file is cached if it wasn't cached before
> - If entry doesn't exist and jar file wasn't cached before - jar file is 
> closed and exception is thrown
> - If entry doesn't exist and jar file was cached before - jar file is kept 
> cached and exception is thrown
> 
> 
> The following tests have been used to verify the fix:
> - New regression tests
> - ``:jdk_core:`` tests
> - `api/java_util`,`api/java_net` JCK tests

Aleksei Efimov has updated the pull request incrementally with one additional 
commit since the last revision:

  JDK-8264048: Remove old version of RemoveJar test

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3263/files
  - new: https://git.openjdk.java.net/jdk/pull/3263/files/6aeb..2f0fa527

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3263&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3263&range=00-01

  Stats: 179 lines in 1 file changed: 0 ins; 179 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3263.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3263/head:pull/3263

PR: https://git.openjdk.java.net/jdk/pull/3263


Re: RFR: 8264048: Fix caching in Jar URL connections when an entry is missing

2021-03-31 Thread Aleksei Efimov
On Wed, 31 Mar 2021 11:24:02 GMT, Daniel Fuchs  wrote:

>> Current fix tries to tackle an issue with URL connection referencing 
>> non-existing Jar file entries:
>> If an entry that doesn't exist is specified in an URL connection the 
>> underlying Jar file is still cached even if an exception is thrown after 
>> that. Such behavior prevents the caller, for instance, a `URLClassLoader`, 
>> from closing a Jar file.
>> 
>> The proposed fix checks if entry exists before caching a Jar file (only for 
>> cases with enabled caching):
>> - If entry exists - jar file is cached if it wasn't cached before
>> - If entry doesn't exist and jar file wasn't cached before - jar file is 
>> closed and exception is thrown
>> - If entry doesn't exist and jar file was cached before - jar file is kept 
>> cached and exception is thrown
>> 
>> 
>> The following tests have been used to verify the fix:
>> - New regression tests
>> - ``:jdk_core:`` tests
>> - `api/java_util`,`api/java_net` JCK tests
>
> Hi Aleksei, thanks for putting this together.
> 
> `test/jdk/sun/misc/URLClassPath/RemoveJar.java` seems to be an older version 
> of `test/jdk/java/net/URLClassLoader/RemoveJar.java`. The two tests are 
> almost identical - so `test/jdk/sun/misc/URLClassPath/RemoveJar.java` can 
> probably be removed from the PR.
> 
> Otherwise the proposed changes look good to me.

Thanks for the review, Daniel. It is correct that 
`test/jdk/sun/misc/URLClassPath/RemoveJar.java` is an old version. It is 
removed now.

-

PR: https://git.openjdk.java.net/jdk/pull/3263


Re: RFR: 8264048: Fix caching in Jar URL connections when an entry is missing [v2]

2021-03-31 Thread Brent Christian
On Wed, 31 Mar 2021 12:47:50 GMT, Aleksei Efimov  wrote:

>> Current fix tries to tackle an issue with URL connection referencing 
>> non-existing Jar file entries:
>> If an entry that doesn't exist is specified in an URL connection the 
>> underlying Jar file is still cached even if an exception is thrown after 
>> that. Such behavior prevents the caller, for instance, a `URLClassLoader`, 
>> from closing a Jar file.
>> 
>> The proposed fix checks if entry exists before caching a Jar file (only for 
>> cases with enabled caching):
>> - If entry exists - jar file is cached if it wasn't cached before
>> - If entry doesn't exist and jar file wasn't cached before - jar file is 
>> closed and exception is thrown
>> - If entry doesn't exist and jar file was cached before - jar file is kept 
>> cached and exception is thrown
>> 
>> 
>> The following tests have been used to verify the fix:
>> - New regression tests
>> - ``:jdk_core:`` tests
>> - `api/java_util`,`api/java_net` JCK tests
>
> Aleksei Efimov has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   JDK-8264048: Remove old version of RemoveJar test

Hi, Aleksei.  The change looks good.

-

Marked as reviewed by bchristi (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/3263