BewareMyPower commented on PR #24745: URL: https://github.com/apache/pulsar/pull/24745#issuecomment-3311148887
In principal, a Java project's code base should assume the JDK is reliable. `ForkJoinPool` is widely used within JDK, not only for `CompletableFuture`: - Parallel stream (`parallelStream()`) uses `ForkJoinPool` to execute sub-tasks (see `ForkJoinTask`) - Virtual threads uses `ForkJoinPool` as its default scheduler (see `VirtualThread#createDefaultScheduler`) - (not sure if there are some other similar classes provided by JDK) - 3rd party Java infra projects like Caffine that use default `ForkJoinPool` as the default executor Now, your question might become which Apache project uses parallel stream, virtual threads, Caffine cache (or any unknown dependency that uses the common `ForkJoinPool` as the default executor) without changing the default scheduler? I don't have a tool to detect usages of `ForkJoinPool` in all open sourced or even only Apache projects, but this issue is beyond the scope of a Java project like Apache Pulsar. If you have suffered the bug in production and is eager to get a fix ASAP, you should: - Fork the project and push the "fix" internally (I believe you have also done that) - Build a JDK that includes the fix by yourself or turn to an existing JDK vendor However, such a bug from JDK that rarely happens should not be a key factor that changes the code base a lot. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org