icinga2/lib
Yonas Habteab 1c34610a78 JsonRpcConnection: Don't read any data on shutdown
When the `Desconnect()` method is called, clients are not disconnected
immediately. Instead, a new coroutine is spawned using the same strand
as the other coroutines. This coroutine calls `async_shutdown` on the
TCP socket, which might be blocking. However, in order not to block
indefintely, the `Timeout` class cancels all operations on the socket
after `10` seconds. Though, the timeout does not trigger the handler
immediately; it creates spawns another coroutine using the same strand
as in the `JsonRpcConnection` class. This can cause unexpected delays if
e.g. `HandleIncomingMessages` gets resumed before the coroutine from the
timeout class. Apart from that, the coroutine for writing messages uses
the same condition, making the two symmetrical.
2024-10-31 17:09:13 +01:00
..
base Log: fix some parts of messages not being discarded early 2024-09-27 14:23:05 +02:00
checker Explicitly stop started timers and wait for them 2023-04-14 14:52:04 +02:00
cli Merge pull request #7799 from Icinga/bugfix/file-end 2023-08-25 11:06:19 +02:00
compat Explicitly stop started timers and wait for them 2023-04-14 14:52:04 +02:00
config ConfigItem::CommitNewItems(): pre-sort types by their load dependencies once 2024-09-20 16:18:12 +02:00
db_ido Update object#config_hash after all relations queries 2024-05-22 13:39:30 +02:00
db_ido_mysql Explicitly stop started timers and wait for them 2023-04-14 14:52:04 +02:00
db_ido_pgsql Explicitly stop started timers and wait for them 2023-04-14 14:52:04 +02:00
icinga Merge pull request #10201 from Icinga/Validation-failed 2024-10-31 12:30:39 +01:00
icingadb Remove redundant "Validation failed" prefix from ValidationError exceptions 2024-10-23 13:06:12 +02:00
livestatus Centralise default icinga.* and env.* macros 2023-02-17 15:33:36 +01:00
methods Don't use thread-local variable in coroutine & process final cr in global thread pool 2024-09-05 17:36:03 +02:00
mysql_shim IDO MySQL: explicitly use latin1 2022-03-31 15:04:45 +02:00
notification Explicitly stop started timers and wait for them 2023-04-14 14:52:04 +02:00
perfdata Add closing quotationmarks in Validator for influxdb writer config 2024-09-25 13:03:00 +02:00
pgsql_shim Replace Copyright header with a short version, part II 2019-02-25 15:09:36 +01:00
remote JsonRpcConnection: Don't read any data on shutdown 2024-10-31 17:09:13 +01:00
CMakeLists.txt Rename ICINGA2_WITH_REDIS to ICINGA2_WITH_ICINGADB 2019-11-02 14:00:24 +01:00