Sometimes terminated worker processes in Classic are still considered being alive [CORE2234] #2661
Labels
affect-version: 1.0.3
affect-version: 1.5.4
affect-version: 1.5.5
affect-version: 2.0.0
affect-version: 2.0.1
affect-version: 2.0.2
affect-version: 2.0.3
affect-version: 2.0.4
affect-version: 2.1.0
affect-version: 2.1.1
affect-version: 2.5 Alpha 1
component: engine
fix-version: 2.1.2
fix-version: 2.5 Beta 1
priority: major
qa: cannot be tested
type: bug
Submitted by: @dyemanov
In Classic, some engine subsystems rely on being able to track dead worker processes in order to cleanup their resources from the shared memory. For example, it allows to release granted locks that nobody owns after a crash, thus satisfying locking requests of the alive processes.
On Windows, we call OpenProcess() for the given PID and check the result. However, it's just become proven that it still can return a valid handle for a recently terminated process.
Commits: 8ba1e1b 74bc09e
The text was updated successfully, but these errors were encountered: