icinga2/lib
Julian Brost ad218c9a12 Icinga DB: initialize environment ID during config validation
IcingaDB may receive callbacks from Boost signals before being fully started.
This resulted in situations where m_EnvironmentId was used before it was
initialized properly. This is fixed by initializing it earlier (during the
config validation stage). However, at this stage, it should not yet write to
disk, therefore, persisting the environment ID to disk is delayed until later
in the startup process.

Initializing at this stage has an extra benefit: if there is an error for some
reason (possibly corrupt icingadb.env file), this now shows up as a nice error
during config validation.

Additionally, this replaces the use of std::call_once with std::mutex due to
bug in libstdc++ (see inline comment for reference).
2022-06-10 14:19:58 +02:00
..
base Replace EventuallyAtomic with AtomicOrLocked which falls back to a mutex 2022-05-03 12:02:46 +02:00
checker Merge pull request #8601 from Icinga/feature/replace-std-boost-bind-with-lambdas-7006 2021-03-18 17:56:13 +01:00
cli Fix compiler warnings don't move local variables 2022-02-22 17:51:43 +01:00
compat Merge pull request #8447 from Icinga/feature/deprecated-relative-removal 2021-06-22 12:05:33 +02:00
config ConfigItem: Use atomic variables for notified and commited items count 2022-02-25 15:17:33 +01:00
db_ido IDO: use per-instance notification_id in history 2022-02-10 16:36:35 +01:00
db_ido_mysql Merge pull request #9314 from Icinga/latin1 2022-04-04 11:05:12 +02:00
db_ido_pgsql IDO PgSQL: always use regular string literals 2021-08-05 11:39:32 +02:00
icinga Merge pull request #7919 from Icinga/feature/parameter-delimiters-check-execution-6277 2022-05-23 13:23:36 +02:00
icingadb Icinga DB: initialize environment ID during config validation 2022-06-10 14:19:58 +02:00
livestatus Merge pull request #8601 from Icinga/feature/replace-std-boost-bind-with-lambdas-7006 2021-03-18 17:56:13 +01:00
methods Replace std/boost::bind() function with lambda expression 2021-03-10 16:29:40 +01:00
mysql_shim IDO MySQL: explicitly use latin1 2022-03-31 15:04:45 +02:00
notification Merge pull request #9123 from Icinga/bugfix/icinga2-crashes-when-sending-notifications-8186 2022-01-19 11:48:40 +01:00
perfdata Merge pull request #9321 from Icinga/perfdata-resume-signal 2022-04-07 15:51:02 +02:00
pgsql_shim
remote Merge pull request #9332 from Icinga/bugfix/compare-cluster-tickets-in-constant-time 2022-04-11 15:32:32 +02:00
CMakeLists.txt Rename ICINGA2_WITH_REDIS to ICINGA2_WITH_ICINGADB 2019-11-02 14:00:24 +01:00