diff options
author | Siri Hansen <[email protected]> | 2018-09-14 14:12:13 +0200 |
---|---|---|
committer | Siri Hansen <[email protected]> | 2018-09-14 14:12:13 +0200 |
commit | 6073d37a5a0691704d0fa1a5ff9289ba9e35c8ed (patch) | |
tree | 4c6b91691981f5713904638974635dfe181eb7a1 /system | |
parent | 48a1c458a46dcd1f031fd3b9689af80b32b4a6a2 (diff) | |
download | otp-6073d37a5a0691704d0fa1a5ff9289ba9e35c8ed.tar.gz otp-6073d37a5a0691704d0fa1a5ff9289ba9e35c8ed.tar.bz2 otp-6073d37a5a0691704d0fa1a5ff9289ba9e35c8ed.zip |
[logger] Read config before terminating handler process
When a handler process is terminated due to overload, it reads its
configuration from the configuration database, so it can be restarted
with the same configuration after a small delay. This was earlier done
in a different process, which was spawned off from the terminate
function. This caused a race condition, where in some cases, the
configuration was already removed before it could be read.
The reason for spawning off a process, is to avoid a deadlock due to
the call to logger:remove_handler/1.
This commit moves the call to logger:get_handler_config/1 back to the
handler process - to ensure that the data is still there, but keeps
the call to logger:remove_handler/1 in the spawned off process - to
avoid deadlock.
Diffstat (limited to 'system')
0 files changed, 0 insertions, 0 deletions