icinga2/lib
Julian Brost e87e1ea73f Freeze globals namespace during config load
This allows for a faster config load due to less locking required.

The change is slightly backwards-incompatible. Before, you could manipulate the
globals namespace at a later stage, but disallowing this feels reasonable for
the performance benefit alone (which especially shows on many-core machines).
Apart from that, it's doubtful if doing so is even useful at all as the DSL
provides no mechanism for you to synchronize your operations that may run in
parallel. The data structures itself are protected from race conditions, but
anything implemented on top of this may still be subject to race conditions.
And even if some user has a good reason for doing this, there's a feasible
workaround by creating your own namespace like globals.mutable and using that
instead.
2023-03-30 18:07:51 +02:00
..
base Document why Timer::TimerThreadProc() can use Timer members during Timer#~Timer() call 2023-03-29 18:04:19 +02:00
checker CheckerComponent#CheckThreadProc(): also propagate next check update to Icinga DB 2023-02-01 16:25:56 +01:00
cli Freeze globals namespace during config load 2023-03-30 18:07:51 +02:00
compat Deduplicate and stabilize fragile filesystem transactions 2023-01-27 12:03:56 +01:00
config Merge pull request #9466 from Icinga/flush-temp-files 2023-02-02 16:29:11 +01:00
db_ido Centralise default icinga.* and env.* macros 2023-02-17 15:33:36 +01:00
db_ido_mysql CONTEXT: use << everywhere to unify usages 2022-11-30 11:06:51 +01:00
db_ido_pgsql CONTEXT: use << everywhere to unify usages 2022-11-30 11:06:51 +01:00
icinga Merge pull request #8302 from Icinga/bugfix/windows-systemroot-aliases-6259 2023-02-20 13:09:15 +01:00
icingadb Centralise default icinga.* and env.* macros 2023-02-17 15:33:36 +01:00
livestatus Centralise default icinga.* and env.* macros 2023-02-17 15:33:36 +01:00
methods Centralise default icinga.* and env.* macros 2023-02-17 15:33:36 +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 #8302 from Icinga/bugfix/windows-systemroot-aliases-6259 2023-02-20 13:09:15 +01:00
pgsql_shim Replace Copyright header with a short version, part II 2019-02-25 15:09:36 +01:00
remote Merge pull request #9466 from Icinga/flush-temp-files 2023-02-02 16:29:11 +01:00
CMakeLists.txt Rename ICINGA2_WITH_REDIS to ICINGA2_WITH_ICINGADB 2019-11-02 14:00:24 +01:00