Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension [v3]

2022-12-08 Thread Joe Darcy
On Thu, 8 Dec 2022 17:15:46 GMT, Alan Bateman  wrote:

>> Another small step in the multi-release/multi-year effort to remove cruft 
>> from Thread/ThreadGroup.
>> 
>> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
>> the Classic VM. The method controlled whether threads were suspended when 
>> the GC failed. It appears to have interacted with a callback mechanism that 
>> could potentially free memory, allowing the GC to retry. The method was 
>> never specified .
>> 
>> The method was deprecated and changed to do nothing in JDK 1.2. It was 
>> deprecated for removal in Java 14. 
>> 
>> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
>> method.
>> 
>> It is time to finally remove this method. The compatibility impact should be 
>> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
>> a good time to do this.
>
> Alan Bateman has updated the pull request with a new target base due to a 
> merge or a rebase. The incremental webrev excludes the unrelated changes 
> brought in by the merge/rebase. The pull request contains three additional 
> commits since the last revision:
> 
>  - Merge
>  - Merge
>  - Remove allowThreadSuspension

Still looks good.

-

PR: https://git.openjdk.org/jdk/pull/11373


Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension [v3]

2022-12-08 Thread Alan Bateman
> Another small step in the multi-release/multi-year effort to remove cruft 
> from Thread/ThreadGroup.
> 
> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
> the Classic VM. The method controlled whether threads were suspended when the 
> GC failed. It appears to have interacted with a callback mechanism that could 
> potentially free memory, allowing the GC to retry. The method was never 
> specified .
> 
> The method was deprecated and changed to do nothing in JDK 1.2. It was 
> deprecated for removal in Java 14. 
> 
> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
> method.
> 
> It is time to finally remove this method. The compatibility impact should be 
> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
> a good time to do this.

Alan Bateman has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains three additional commits since 
the last revision:

 - Merge
 - Merge
 - Remove allowThreadSuspension

-

Changes:
  - all: https://git.openjdk.org/jdk/pull/11373/files
  - new: https://git.openjdk.org/jdk/pull/11373/files/639b6b58..3b06acd6

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk=11373=02
 - incr: https://webrevs.openjdk.org/?repo=jdk=11373=01-02

  Stats: 5249 lines in 127 files changed: 4880 ins; 87 del; 282 mod
  Patch: https://git.openjdk.org/jdk/pull/11373.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11373/head:pull/11373

PR: https://git.openjdk.org/jdk/pull/11373


Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension [v2]

2022-12-07 Thread Alan Bateman
> Another small step in the multi-release/multi-year effort to remove cruft 
> from Thread/ThreadGroup.
> 
> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
> the Classic VM. The method controlled whether threads were suspended when the 
> GC failed. It appears to have interacted with a callback mechanism that could 
> potentially free memory, allowing the GC to retry. The method was never 
> specified .
> 
> The method was deprecated and changed to do nothing in JDK 1.2. It was 
> deprecated for removal in Java 14. 
> 
> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
> method.
> 
> It is time to finally remove this method. The compatibility impact should be 
> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
> a good time to do this.

Alan Bateman has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains two additional commits since the 
last revision:

 - Merge
 - Remove allowThreadSuspension

-

Changes:
  - all: https://git.openjdk.org/jdk/pull/11373/files
  - new: https://git.openjdk.org/jdk/pull/11373/files/427025eb..639b6b58

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk=11373=01
 - incr: https://webrevs.openjdk.org/?repo=jdk=11373=00-01

  Stats: 92711 lines in 1546 files changed: 45616 ins; 37873 del; 9222 mod
  Patch: https://git.openjdk.org/jdk/pull/11373.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11373/head:pull/11373

PR: https://git.openjdk.org/jdk/pull/11373


Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension

2022-11-29 Thread Joe Darcy
On Fri, 25 Nov 2022 18:54:28 GMT, Alan Bateman  wrote:

> Another small step in the multi-release/multi-year effort to remove cruft 
> from Thread/ThreadGroup.
> 
> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
> the Classic VM. The method controlled whether threads were suspended when the 
> GC failed. It appears to have interacted with a callback mechanism that could 
> potentially free memory, allowing the GC to retry. The method was never 
> specified .
> 
> The method was deprecated and changed to do nothing in JDK 1.2. It was 
> deprecated for removal in Java 14. 
> 
> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
> method.
> 
> It is time to finally remove this method. The compatibility impact should be 
> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
> a good time to do this.

Good for JDK 21.

-

Marked as reviewed by darcy (Reviewer).

PR: https://git.openjdk.org/jdk/pull/11373


Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension

2022-11-29 Thread Chris Hegarty
On Fri, 25 Nov 2022 18:54:28 GMT, Alan Bateman  wrote:

> Another small step in the multi-release/multi-year effort to remove cruft 
> from Thread/ThreadGroup.
> 
> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
> the Classic VM. The method controlled whether threads were suspended when the 
> GC failed. It appears to have interacted with a callback mechanism that could 
> potentially free memory, allowing the GC to retry. The method was never 
> specified .
> 
> The method was deprecated and changed to do nothing in JDK 1.2. It was 
> deprecated for removal in Java 14. 
> 
> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
> method.
> 
> It is time to finally remove this method. The compatibility impact should be 
> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
> a good time to do this.

LGTM

-

Marked as reviewed by chegar (Reviewer).

PR: https://git.openjdk.org/jdk/pull/11373


Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension

2022-11-28 Thread Stuart Marks
On Mon, 28 Nov 2022 13:13:09 GMT, Jaikiran Pai  wrote:

>> Another small step in the multi-release/multi-year effort to remove cruft 
>> from Thread/ThreadGroup.
>> 
>> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
>> the Classic VM. The method controlled whether threads were suspended when 
>> the GC failed. It appears to have interacted with a callback mechanism that 
>> could potentially free memory, allowing the GC to retry. The method was 
>> never specified .
>> 
>> The method was deprecated and changed to do nothing in JDK 1.2. It was 
>> deprecated for removal in Java 14. 
>> 
>> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
>> method.
>> 
>> It is time to finally remove this method. The compatibility impact should be 
>> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
>> a good time to do this.
>
>> Joe, Stuart and I discussed briefly and think early in JDK 21 is a good time 
>> to do this.
> 
> I guess, this would then mean this PR will be integrated into mainline after 
> 8th December when the branch for JDK 20 will be forked 
> https://openjdk.org/projects/jdk/20/#Schedule?

@jaikiran wrote:

> I guess, this would then mean this PR will be integrated into mainline after 
> 8th December when the branch for JDK 20 will be forked

Yes, I'm sure this will go in soon after the JDK 20 fork.

-

PR: https://git.openjdk.org/jdk/pull/11373


Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension

2022-11-28 Thread Stuart Marks
On Fri, 25 Nov 2022 18:54:28 GMT, Alan Bateman  wrote:

> Another small step in the multi-release/multi-year effort to remove cruft 
> from Thread/ThreadGroup.
> 
> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
> the Classic VM. The method controlled whether threads were suspended when the 
> GC failed. It appears to have interacted with a callback mechanism that could 
> potentially free memory, allowing the GC to retry. The method was never 
> specified .
> 
> The method was deprecated and changed to do nothing in JDK 1.2. It was 
> deprecated for removal in Java 14. 
> 
> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
> method.
> 
> It is time to finally remove this method. The compatibility impact should be 
> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
> a good time to do this.

Marked as reviewed by smarks (Reviewer).

-

PR: https://git.openjdk.org/jdk/pull/11373


Re: RFR: 8297295: Remove ThreadGroup.allowThreadSuspension

2022-11-28 Thread Jaikiran Pai
On Fri, 25 Nov 2022 18:54:28 GMT, Alan Bateman  wrote:

> Another small step in the multi-release/multi-year effort to remove cruft 
> from Thread/ThreadGroup.
> 
> java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and 
> the Classic VM. The method controlled whether threads were suspended when the 
> GC failed. It appears to have interacted with a callback mechanism that could 
> potentially free memory, allowing the GC to retry. The method was never 
> specified .
> 
> The method was deprecated and changed to do nothing in JDK 1.2. It was 
> deprecated for removal in Java 14. 
> 
> A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
> method.
> 
> It is time to finally remove this method. The compatibility impact should be 
> negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is 
> a good time to do this.

Looks fine to me.

> Joe, Stuart and I discussed briefly and think early in JDK 21 is a good time 
> to do this.

I guess, this would then mean this PR will be integrated into mainline after 
8th December when the branch for JDK 20 will be forked 
https://openjdk.org/projects/jdk/20/#Schedule?

-

Marked as reviewed by jpai (Reviewer).

PR: https://git.openjdk.org/jdk/pull/11373


RFR: 8297295: Remove ThreadGroup.allowThreadSuspension

2022-11-28 Thread Alan Bateman
Another small step in the multi-release/multi-year effort to remove cruft from 
Thread/ThreadGroup.

java.lang.ThreadGroup.allowThreadSuspension(boolean) dates from JDK 1.1 and the 
Classic VM. The method controlled whether threads were suspended when the GC 
failed. It appears to have interacted with a callback mechanism that could 
potentially free memory, allowing the GC to retry. The method was never 
specified .

The method was deprecated and changed to do nothing in JDK 1.2. It was 
deprecated for removal in Java 14. 

A corpus analysis of 30M classes in 130k artifacts found 0 usages of this 
method.

It is time to finally remove this method. The compatibility impact should be 
negligible. Joe, Stuart and I discussed briefly and think early in JDK 21 is a 
good time to do this.

-

Commit messages:
 - Remove allowThreadSuspension

Changes: https://git.openjdk.org/jdk/pull/11373/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk=11373=00
  Issue: https://bugs.openjdk.org/browse/JDK-8297295
  Stats: 24 lines in 2 files changed: 0 ins; 24 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/11373.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11373/head:pull/11373

PR: https://git.openjdk.org/jdk/pull/11373