[jdk11u-dev] RFR: 8329013: StackOverflowError when starting Apache Tomcat with signed jar

Amos Shi ashi at openjdk.org
Mon Apr 29 20:47:13 UTC 2024


On Mon, 29 Apr 2024 06:58:21 GMT, Matthias Baesken <mbaesken at openjdk.org> wrote:

>> Backport of [JDK-8329013](https://bugs.openjdk.org/browse/JDK-8329013)
>> - This PR contains two commits
>> - commit 1:
>>   - is the original git apply
>>   - and the `src/java.base/share/classes/jdk/internal/misc/ThreadTracker.java` file needed by this PR
>>     - The `ThreadTracker.java` class was added by https://github.com/openjdk/jdk/commit/9583e3657e43cc1c6f2101a64534564db2a9bd84 , which is pretty big for `Virtual Threads` ([JDK-8284161](https://bugs.openjdk.org/browse/JDK-8284161)) and we have no intention to back port this change to Java 11 right now
>>     - So here we simply copy the current code of `ThreadTracker.java` to `jdk11u-dev`
>> - commit 2:
>>   - Manual merge of `src/java.base/share/classes/jdk/internal/event/EventHelper.java` based on the `EventHelper.java.rej` file. The change to this file can be `considered as clean`.
>>   - Fix java 11 compile error for `ThreadTracker.java`
>> 
>> Testing
>> - Local: Test passed
>>   - `RecursiveEventHelper.java`: Test results: passed: 1
>> - Pipeline: All checks have passed
>> - Testing Machine: SAP nightlies passed on `2024-04-28`
>>   - Automated jtreg test: jtreg_jdk_tier2
>>   - `jdk/security/logging/RecursiveEventHelper.java`: SUCCESSFUL GitHub 📊⏲ - [2,152 msec]
>
> src/java.base/share/classes/jdk/internal/misc/ThreadTracker.java line 42:
> 
>> 40:      * as they may run arbitrary code and/or leak references to Thread objects.
>> 41:      */
>> 42:     private class ThreadRef {
> 
> In case of record to class, shouldn't it be a final class ?

@MBaesken Good catch. I decompiled a Java Record type confirmed this point: `final` is needed


access_flags: 0000000000110000 final super

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

PR Review Comment: https://git.openjdk.org/jdk11u-dev/pull/2687#discussion_r1583736478


More information about the jdk-updates-dev mailing list