On Mon, 8 Apr 2024 09:20:44 GMT, Daniel Jeliński <djelin...@openjdk.org> wrote:

> The RejectedExecutionException was thrown when the thread executing 
> `Server.start` managed to shut down the `compilerThreadPool` before the 
> thread executing `Server.handleRequest` submitted the compilation task.
> 
> This patch removes the extra thread used for `Server.handleRequest`, and 
> executes that method directly in the thread pool. All `compilerThreadPool` 
> uses happen on the `Server.start` thread now, and no new tasks are submitted 
> after the thread pool is shut down.
> 
> In order to verify the fix, I modified `IdleMonitor.KEEPALIVE` to 1 second. 
> With that change the problem was occasionally reproducible without the patch 
> from this PR. With the patch, the `RejectedExecutionException` problem did 
> not reproduce. 
> 
> No new regression test. Existing langtools tests continue to pass.

This pull request has now been integrated.

Changeset: 3b6629ce
Author:    Daniel Jeliński <djelin...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/3b6629cec7a2ecec8dcb5b94d8ed3e169483aa97
Stats:     19 lines in 2 files changed: 1 ins; 10 del; 8 mod

8324673: javacserver failed during build: RejectedExecutionException

Reviewed-by: cstein, erikj

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

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

Reply via email to