13268 Commits

Author SHA1 Message Date
Julian Brost
dd51997c73
Merge pull request #9624 from Icinga/9618
Make compilable on Boost v1.81
2023-01-05 15:32:22 +01:00
Alexander A. Klimov
99c2d69dc8 Handle boost::beast::http::basic_fields#operator[]() signature change (v1.81)
Use always working std::string(x), not broken x.to_string().
(x is a return value.)
2023-01-05 11:18:20 +01:00
Alexander A. Klimov
5bcbc96e22 Handle boost::beast::http::basic_fields#set() signature change (v1.81)
Make String convertible to boost::beast::string_view (always working),
not boost::string_view (broken).
2023-01-05 11:18:20 +01:00
Alexander Aleksandrovič Klimov
4b754637f7
Merge pull request #9605 from Icinga/no-objectlock-copy
Prevent ObjectLock from being copied
2022-12-08 20:00:23 +01:00
Julian Brost
a8cc5dff89 Prevent ObjectLock from being copied
Copying an ObjectLock results in the underlying mutex being unlocked too often.
There's also no good reason for copying a scoped locking class (if at all, it
should be moved).
2022-12-08 15:48:01 +01:00
Alexander Aleksandrovič Klimov
ca328627cd
Merge pull request #9537 from Icinga/replace-some-raw-pointer-with-intrusive-ptr
FilterUtility: Replace some nested raw pointers by `unique_ptr<>*`
2022-12-06 13:07:24 +01:00
Alexander Aleksandrovič Klimov
b585e20a4c
Merge pull request #9591 from Icinga/circular-refs
icinga2 daemon: w/o --dump-objects just check for circular refs
2022-11-30 21:41:21 +01:00
Julian Brost
adf5e6e86e
Merge pull request #9557 from Icinga/ctx
CONTEXT: lazily evaluate frames to only actually assemble when needed
2022-11-30 15:13:53 +01:00
Alexander A. Klimov
83021f8231 CONTEXT: use << everywhere to unify usages 2022-11-30 11:06:51 +01:00
Alexander A. Klimov
b82814fb29 CONTEXT: lazily evaluate frames to only actually assemble when needed 2022-11-30 11:06:45 +01:00
Alexander A. Klimov
0b46e0aeab CONTEXT: use l_Frames as stack to reduce modification complexity 2022-11-30 10:56:24 +01:00
Alexander A. Klimov
70df0e298e CONTEXT: reduce malloc()s by replacing linked list with vector 2022-11-30 10:56:24 +01:00
Alexander A. Klimov
7c481742f4 icinga2 daemon: w/o --dump-objects just check for circular refs
and don't malloc() anything.
2022-11-30 10:45:50 +01:00
Alexander A. Klimov
e53ec2a50f SerializeInternal(): allow to optionally not malloc() anything
This effectively just checks for circular refs.
2022-11-30 10:45:50 +01:00
Julian Brost
f59f361f09
Merge pull request #9508 from Icinga/bugfix/fix-data-race-in-apply-rule
Fix data race in `ApplyRule` class
2022-11-29 14:18:09 +01:00
Yonas Habteab
c1f73fbc1d FilterUtility: Replace some nested raw pointers by our unique_ptr<X>* 2022-11-28 14:50:54 +01:00
Yonas Habteab
834709543a ApplyRule: Make m_HasMatches atomic
This prevents the `m_HasMatches` property from being altered simultaneously.
This might seem harmless (since this property can only be set to true by any calling thread),
however, from a technical (C++) point of view, this constitutes a data race.
2022-11-28 14:13:58 +01:00
Julian Brost
ae32b3cbbd
Merge pull request #9586 from Icinga/9363
icinga2 daemon: write icinga2.debug only if --dump-objects given
2022-11-24 16:03:42 +01:00
Julian Brost
63199057d2
Merge pull request #9584 from Icinga/probot/sync-changelog/master/ea6cbb85afc20e5846eabcd17a93267ec4599aa9
CHANGELOG.md: add v2.13.6
2022-11-24 14:06:16 +01:00
Alexander A. Klimov
f71612d8f3 icinga2 object list: warn on possibly outdated config 2022-11-24 10:50:17 +01:00
Alexander Aleksandrovič Klimov
f855cfa155
Merge pull request #9593 from theFeu/patch-1
Change apt-get to apt
2022-11-23 14:59:46 +01:00
Alexander A. Klimov
0767c6ef87 icinga2 daemon -C: write icinga2.debug only if --dump-objects given
to save config (re)load time.
2022-11-23 12:54:33 +01:00
Julian Brost
dd99a5ace9
Merge pull request #9577 from Icinga/ConfigItem-CommitNewItems
ConfigItem::CommitNewItems(): allow fast search of pending items by type
2022-11-23 12:34:51 +01:00
Feu Mourek
76edd00ec2
Change apt-get to apt 2022-11-23 11:09:36 +01:00
Alexander A. Klimov
ae693cb7e1 ConfigItem::CommitNewItems(): allow fast search of pending items by type 2022-11-21 15:07:39 +01:00
Alexander A. Klimov
33e609d791 Type#GetLoadDependencies(): avoid malloc()
- cache result
- return it by const ref
- do Type::GetByName() for the callers
2022-11-21 15:07:39 +01:00
Julian Brost
a958a735d7
Merge pull request #9555 from Icinga/ApplyRule-GetDebugInfo
ApplyRule#GetDebugInfo(): return by const ref to avoid malloc()
2022-11-16 13:35:04 +01:00
Julian Brost
e713eb5c1c
Merge pull request #9572 from Icinga/ApplyRule-getters
ApplyRule#GetF*Var(): return by const ref
2022-11-16 13:00:59 +01:00
Julian Brost
18ab672565 CHANGELOG.md: add v2.13.6 2022-11-16 11:51:21 +00:00
Julian Brost
ea6cbb85af
Merge pull request #9570 from Icinga/jemalloc-doc
Recommend to try libjemalloc to speed up reload
2022-11-16 12:51:05 +01:00
Alexander A. Klimov
0230883a51 Recommend to try libjemalloc to speed up reload 2022-11-16 12:36:31 +01:00
Alexander A. Klimov
e97a5d59e0 ApplyRule#GetFVVar(): return by const ref
to avoid malloc().
2022-11-08 12:48:13 +01:00
Alexander A. Klimov
738662338f ApplyRule#GetFKVar(): return by const ref
to avoid malloc().
2022-11-08 12:45:21 +01:00
Julian Brost
a6b05059ab
Merge pull request #9566 from Icinga/bugfix/openssl-1.1.1s
Windows: update bundled OpenSSL to version 1.1.1s
2022-11-07 13:38:27 +01:00
Julian Brost
98902b2ff0
Merge pull request #9545 from Icinga/targeted-apply-rules
Separately handle apply rules targetting only specific parent objects
2022-11-04 14:06:15 +01:00
Julian Brost
c501229f84 Windows: update bundled OpenSSL to version 1.1.1s 2022-11-04 13:35:38 +01:00
Yonas Habteab
a8d46e6d47 Use service short name for evaluating targeted service rules 2022-11-04 10:19:26 +01:00
Yonas Habteab
2610fb1285 Avoid evaluating the same filter twice for the same target 2022-11-04 10:15:22 +01:00
Alexander A. Klimov
27a559c5fe ApplyRule#GetDebugInfo(): return by const ref to avoid malloc() 2022-10-28 15:33:44 +02:00
Alexander A. Klimov
a698b9c3da ApplyRule::RuleMap: reduce complexity, save unnecessary lookups 2022-10-28 14:27:53 +02:00
Alexander A. Klimov
a907c2ac9a Targeted apply rules: don't unnecessarily eval filter 2022-10-28 14:27:53 +02:00
Alexander A. Klimov
dacd6a206d VariableExpression#GetVariable(): return by const ref not to unnecessarily malloc() 2022-10-28 14:27:53 +02:00
Alexander A. Klimov
038a5e8ef6 Unify storages of regular/targeted apply rules: std::vector<ApplyRule::Ptr> 2022-10-28 14:27:53 +02:00
Alexander A. Klimov
a56ad38ad3 Separately handle apply rules targetting only specific parent objects
not to unnecessarily run e.g. the filter assign where host.name=="example.com"
for all hosts being not example.com.
2022-10-28 14:27:53 +02:00
Julian Brost
08324f8f20
Merge pull request #9549 from Icinga/boost180
Bump Boost v1.79 -> v1.80
2022-10-26 16:44:37 +02:00
Alexander A. Klimov
24b24da8e9 Bump Boost v1.79 -> v1.80 2022-10-26 11:43:32 +02:00
Alexander Aleksandrovič Klimov
c0fd00c337
Merge pull request #9548 from Icinga/Al2Klimov-patch-3
Fix wrong operator precedence in documentation
2022-10-25 18:07:30 +02:00
Alexander Aleksandrovič Klimov
247e41309a
Fix wrong operator precedence in documentation
<1> => (1 || 0) && 0
0.000000
<2> => 1 || (0 && 0)
1.000000
<3> => 1 || 0 && 0
1.000000
<4> =>
2022-10-25 12:01:01 +02:00
Alexander A. Klimov
fd7ac4e5ca Allow hashmaps of String 2022-10-21 10:28:41 +02:00
Alexander A. Klimov
449a3c14cf Allow intrusive pointers to ApplyRule 2022-10-21 10:28:41 +02:00