Julian Brost
abe2dfa763
Replace EventuallyAtomic with AtomicOrLocked which falls back to a mutex
...
Apparently there was a reason for making the members of generated classes
atomic. However, this was only done for some types, others were still accessed
using non-atomic operations. For members of type T::Ptr (i.e. intrusive_ptr<T>),
this can result in a double free when multiple threads access the same variable
and at least one of them writes to the variable.
This commit makes use of std::atomic<T> for more T (it removes the additional
constraint sizeof(T) <= sizeof(void*)) and uses a type including a mutex for
load and store operations as a fallback.
2022-05-03 12:02:46 +02:00
Noah Hilverling
73e0d6e61b
Icinga DB: Make sure object relationships are handled correctly
2021-11-12 13:34:57 +01:00
Alexander A. Klimov
bbe0f2d8c4
mkclass: make .ti class members atomic if possible
...
... not to have to lock the objects while setting attributes.
2020-07-07 18:24:06 +02:00
Michael Friedrich
d14a88235d
Replace Copyright header with a short version, part I
...
CLion -> replace in path
2019-02-25 14:48:22 +01:00
Michael Friedrich
44c3b83769
icinga.com: Update '*.ti'
2018-10-18 09:30:00 +02:00
Michael Insel
158ae2188e
Change copyright header for 2018
2018-01-02 12:08:55 +01:00
Gunnar Beutner
7ca485f63c
Improve validation for attributes which must not be 'null'
2017-05-30 14:47:28 +02:00
Michael Friedrich
b7caf0820d
Ensure that *.icinga.com is used everywhere
...
fixes #13897
fixes #13277
2017-01-10 17:19:12 +01:00
Philipp Dallig
54e1c8a9d5
Implement exclude and include ability for TimePeriod objects
...
This feature allows to exclude and include specific time period
objects and their time ranges from an existing time period object.
This comes in handy when e.g. excluding holidays.
fixes #7355
Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-05-21 20:33:09 +02:00
Gunnar Beutner
599929b0f6
Update copyright headers for 2016
2016-01-12 08:29:59 +01:00
Gunnar Beutner
d01f09f3ef
Hide internal attributes in the API
...
fixes #10393
2015-10-20 08:25:10 +02:00
Michael Friedrich
d7970f5bb1
Implement modified attributes v2
...
refs #9081
refs #9093
2015-08-15 20:07:10 +02:00
Gunnar Beutner
ec7224e3ed
Generate C++ code for type validators
...
fixes #7709
fixes #8867
2015-03-27 07:59:27 +01:00
Gunnar Beutner
b5dbc66b22
Implement the 'is_inside' attribute for the TimePeriod type
...
refs #8467
2015-02-23 14:08:06 +01:00
Michael Friedrich
78bfd0204c
Update copyright year
2015-01-22 12:00:23 +01:00
Gunnar Beutner
363f23b1d8
Rename ScriptFunction to Function
...
fixes #8258
2015-01-21 08:48:38 +01:00
Gunnar Beutner
05485ea2d6
Disallow calling strings as functions
...
fixes #8040
2014-12-12 20:45:11 +01:00
Gunnar Beutner
92896311f3
Implement support for C/C++ comments in the TI compiler
...
fixes #5018
2014-10-17 19:44:31 +02:00
Gunnar Beutner
632026cd9f
Rename C++ header files.
...
Fixes #6291
2014-05-25 16:27:14 +02:00
Michael Friedrich
601e10cb46
Use CustomVarObject instead of DynamicObject for all libicinga objects.
...
Fixes #6187
2014-05-19 17:57:58 +02:00
Gunnar Beutner
24d018a058
Fix short_name and display_name properties.
...
Refs #4973
2013-10-30 09:55:00 +01:00
Gunnar Beutner
db4b3b78d6
Implement class compiler.
...
Refs #4963
2013-10-28 14:27:36 +01:00