Runwar deadlocks when using Lucee server warmup flag

Description

The latest version of the Lucee warmup calls System.exit() from inside of the server start method (which is synchronized) which fires the shutdown hook, running the server stop method in another thread (which is also synchronized). This causes a deadlock as both threads are waiting on each other.

 

I've spent some time researching the issue, but haven't settled on the best solution yet.

Activity

Show:

Brad Wood March 18, 2020 at 8:55 PM

For now I’ve unsynchronized a couple methods so they won’t deadlock. I can’t find a scenario in which they would overlap in a bad way. I’ve also added a couple extra null checks to prevent errors on early shutdown and tweaked the logging to get rid of unnecessary error messages.

Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Affects versions

Fix versions

Priority

Components

Sentry

Created March 18, 2020 at 4:01 PM
Updated March 18, 2020 at 9:00 PM
Resolved March 18, 2020 at 8:54 PM