You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jan 15, 2019. It is now read-only.
Assignee: jrhunt
Status: Resolved (closed on 2015-01-24 14:50:02 +00:00)
Target Version: 1.13
Last Update: 2015-02-15 01:11:58 +00:00 (in Redmine)
I have attached a patch that provides a new set of functions for registering file descriptors to be closed on fork().
First, a little history:
My team and I have developed a custom event broker module that understands NSCA wire protocol. Unlike the standalone NSCA daemon, this broker bypasses the command pipe and directly injects received results into the check results list. To deal with the inevitable corruption wherein the main thread performs a non-atomic update to the linked-list structure at the same time as our event broker, we had to patch Icinga to protect list access (in both add_check_result_to_list() and read_check_result()) with a mutex.
Protect Check Results List with a mutex
This will allow other threads (i.e. event brokers) to inject
messages directly into the result queue, without memory corruption problems.
fixes #8140
Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
This issue has been migrated from Redmine: https://dev.icinga.com/issues/8140
Created by jrhunt on 2014-12-24 21:31:47 +00:00
Assignee: jrhunt
Status: Resolved (closed on 2015-01-24 14:50:02 +00:00)
Target Version: 1.13
Last Update: 2015-02-15 01:11:58 +00:00 (in Redmine)
I have attached a patch that provides a new set of functions for registering file descriptors to be closed on fork().
First, a little history:
My team and I have developed a custom event broker module that understands NSCA wire protocol. Unlike the standalone NSCA daemon, this broker bypasses the command pipe and directly injects received results into the check results list. To deal with the inevitable corruption wherein the main thread performs a non-atomic update to the linked-list structure at the same time as our event broker, we had to patch Icinga to protect list access (in both add_check_result_to_list() and read_check_result()) with a mutex.
This is that patch.
Attachments
Changesets
2015-01-24 14:41:20 +00:00 by (unknown) 13c0e2b
2015-01-24 14:47:57 +00:00 by (unknown) 99f7339
The text was updated successfully, but these errors were encountered: