Traditional behaviour was to regard all dependecies as cumulative (e.g., the parent considered unreachable if any one dependency is violated), commit ed58922389 made all dependencies regarded redundant (e.g., the parent considered unreachable only if all dependency are violated). This may lead to unrelated services (or even hosts vs. services) inadvertantly regarded to be redundant to each other.
Most importantly, applying the explicit "disable-host-service-checks" dependency described in the "Monitoring Basics" chapter will defeat all other dependencies.
This commit introduces a new "redundancy_group" attribute for dependencies.
Specifying a redundancy_group causes a dependency to be regarded as redundant only inside that redundancy group.
Dependencies lacking a redundancy_group attribute are regarded as essential for the parent.
This allows for both cumulative and redundant dependencies and even a combination (cumulation of redundancies, like SSH depeding on both LDAP and DNS to function, while operating redundant LDAP servers as well as redundant DNS resolvers).
This commit lacks changes to the tests.
79835a5fa Remove -Wsign-conversion from test builds.
53398ca70 Restructure tests.
e3e57c811 Fix for issue #92: Clang 10 Compiler warnings
d736c29d3 Fix -Wconversion warnings in tests when -funsigned-char option is used.
780bd57d6 Merge pull request #96 from Finkman/provide-ns-on-installed
73b347f31 Adds the following advantages: - utf8::cpp is available, even when installed - cmake is aware of the library version - compatible with previous usage: target utf8cpp available when installed
3ca904b21 Version 3.2.2
aa3b12c52 Added a couple of statis_casts to eliminate signed conversion warnings.
ee90a4a52 Added compiler options to enable warnings.
d8b92208f Merge pull request #87 from cschreib/patch-1
a92f85526 Add missing export() command
b85efd66a Test string literals
4e1149766 Merge pull request #80 from RT222/master
ec6747005 Fix the inclusion of both cpp11 and cpp17 headers on C++17 compilation
ddd38b304 Version 3.2
2af93bd67 Documentation: C++ 17 support.
b6cd18f92 test_utf32to8 tests string_view, not string
0991356b7 find_invalid(string_view) returns string_view::npos, not string::npos
4bed367c1 Update test docker image
a7d530de5 C++ 17 support: add tests, remove duplicate utf8::append()
50361edbf Merge pull request #77 from RT222/master
fe79d14ae Switching from gtest to ftest for unit-testing.
7d17aed95 Merge pull request #79 from fu7mu4/it-is-code
957e30052 Does it have syntax hilight
d40e4948f Support for C++17
e39907b38 Version 3.1.2
3c85cd48f Add prefix to NOEXCEPT and OVERRIDE macros.
944ef0561 Merge pull request #55 from Flamefire/disable_tests_for_subproject
dc2442c2e Merge pull request #61 from xenia-project/master
2b1521b48 Fix deprecated std::iterator usage (STL4015).
bee3b1349 Enable tests, docu, install only when building as root project
c3f9261eb Merge pull request #51 from AkiraMiyakoda/msvc_warning
7fb121130 Fix an MSVC warning about narrowing conversion.
170e2d11f Merge pull request #44 from tvanriper/patch-1
32ccbfb74 Removed utf8 path from #include.
2370b95a8 Compile negative test with C++ 98
89cfc3e38 Replace throw() with noexcept when using C++11 or later
687a59d88 Add override keyword when compiled with C++11 or later
f26d39e8a Move C++ version detection to core.h
b1002fd19 Introduce UTF_CPP_CPLUSPLUS macro.
088dd3ad7 Merge pull request #40 from xantares/patch-1
afc32b4c0 Always use GNU install layout except MSVC
82c674b7a Version 3.1
33516ff07 Test -fno-exceptions with unchecked api
f16bdde67 Merge pull request #37 from nemtrif/unchecked_replace_invalid
c52319302 unchecked::replace_invalid()
a3fa4ee84 Merge pull request #36 from nemtrif/gtesturl
8fd51836a Submodule url for googletest is https
ad27c7d5e Merge pull request #33 from nemtrif/optionalinstall
293f85d97 Installation is optional
a540297fd Version 3.0.3
04d29d92a Add inline declarations to non-template functions in cpp11.h
741259277 Merge pull request #30 from nemtrif/ci
335a3ee6a Update docker to 3.0.1
d5e847d0a Update project version
e6da1a36a Set up CircleCI
0b45681b6 Add Dockerfile
66804081d Introduce GTest
a0a2d9d1e Fix for the cpp11.h header guard
7db72814a Merge pull request #24 from nemtrif/release_3_0
007f8e32c advance() can work in backward direction.
92158c9ce Minor whitespace fixes
236d61942 Update documentation for replace_invalid
d8b09b301 Merge pull request #21 from glebm/fix-remove-invalid
3793703e7 Remove unused test data
080f1e6a3 Remove utf8reader sample
00d73e4a0 Remove deprecated functions
2b8596149 Support for C++11
f637e70c1 Merge pull request #22 from AkiraMiyakoda/fix-msvc2019-warning
cfc351c86 Fix MSVC 2017-2019 warning about negative unsigned value.
026aed63d replace_invalid: Replace final incomplete sequence
git-subtree-dir: third-party/utf8cpp
git-subtree-split: 79835a5fa57271f07a90ed36123e30ae9741178e
master before #9627 (a0286e9c6):
<1> => namespace n { x = 42; x = 42 }
^^^^^^
Constant must not be modified.
<2> =>
HEAD of #9627 (24b57f0d3):
<1> => namespace n { x = 42; x = 42 }
null
<2> =>
if caused by dependency or check period.
Now as long as any of the above causes check skips
next check and next update will be up-to-date in Icinga DB,
so the checkable won't slide into false positive overdue.