On Wed, 17 May 2023 20:03:37 GMT, Joe Darcy <da...@openjdk.org> wrote:

> > > Should this issue have a CSR for any behavioral changes?
> > 
> > 
> > Well, you can certainly argue that every bug fix is a behavioral changes, 
> > right :)
> > But seriously, I don't see how this PR could require a CSR. The only 
> > behavioral change is really that `jspawnhelper` can now no longer block and 
> > deadlock. But that's exactly how it should have behaved in the first place.
> 
> Yes, some judgement is needed on behavioral changes; this was broached in 
> portions of my recent talk to the JCP EC:
> 
> "Contributing to OpenJDK: Participating in stewardship for the long-term" 
> https://jcp.org/aboutJava/communityprocess/ec-public/materials/2023-04-12/Contributing_to_OpenJDK_2023_04_12.pdf
> 
> The process spawning code is apparently tricky and subtle, so much so that 
> this will be apparently the third attempt at it since JDK 12. (I still have 
> memories of various platform-specific issues in process handling from my time 
> maintaining the launcher.)
> 
> So I don't think the applicability of a CSR for this change should be 
> dismissed

I've created a [Release Note](https://bugs.openjdk.org/browse/JDK-8308297) 
(please feel to review it :) which outlines the "*behavioral change*". But this 
change is really just a simple bug fix for the case where the JVM leaves a 
hanging process (`jspawnhelper`) behind when it crashes. I don't really see see 
how a CSR will fit in here unless we start to treat crashes as "defined 
behavior" and start  tracking them across releases.

If you still think a CSR will be needed, please advice how it should look like?
 
>  and personally I would prefer a change like this be made early in JDK 22 
> rather than a few weeks before JDK 21 rampdown; it is easier to address any 
> bug tail early in 22 rather than late in 21.

First, this is a bug fix for an issue which impacts production usage of the 
JDK. Second, tt's a "first-day" bug introduced by 
[JDK-5049299](https://bugs.openjdk.org/browse/JDK-5049299) for JDK 8 (initially 
only active on Solaris). It started to manifest on Linux in JDK 13 when the 
`POSIX_SPAWN` launching mechanism was ported to Linux as well, **but** it was 
only detected some time after JDK 17 was released when a higher rate of 
production services started to migrate to JDK 17.

I really don't want to go into a bike-shedding discussion about "*LTS releases 
are not special*", but I think this is a serious enough bug with a simple 
enough fix to resolve it as quick as possible (and downport it to JDK 17 as 
fast as possible). We are still more than two weeks before RDP 1 and we still 
have more than three month before GA so I don't see a reason not to fix this 
now.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/13956#issuecomment-1556989917

Reply via email to