Gunnar Beutner
4c54cddec8
Fix problem with duplicate INSERTs for the same key columns
...
fixes #12461
fixes #12458
2016-08-17 13:35:10 +02:00
Gunnar Beutner
bb7fe3334a
Fix incorrect customvariablestatus query
...
fixes #12459
2016-08-17 09:20:05 +02:00
Gunnar Beutner
2d551db9d8
Remove the ConfigTypeIterator class
...
refs #12448
2016-08-16 13:26:24 +02:00
Gunnar Beutner
b7a1b58069
Improve performance for type lookups
...
fixes #12448
2016-08-16 11:02:33 +02:00
Gunnar Beutner
2e8d3d3934
Implement support for incremental IDO updates
...
fixes #12435
2016-08-15 14:43:11 +02:00
Gunnar Beutner
ebaf239d3b
Replace GetType()->GetName() calls with GetReflectionType()->GetName()
...
fixes #12438
2016-08-15 14:42:03 +02:00
Gunnar Beutner
980ba42825
Remove unused code in the IDO classes
...
fixes #12434
2016-08-14 22:22:18 +02:00
Gunnar Beutner
005e0f532f
Improve HA support for the IDO check task
...
fixes #12430
2016-08-14 20:17:14 +02:00
Gunnar Beutner
c6e5f3dcb8
Fix $ido_name$ macro when using the IDO check type with command_endpoint
...
fixes #12428
2016-08-14 19:30:20 +02:00
Gunnar Beutner
fda032c0c4
Fix incorrect return values for some of the CompatUtility methods
...
fixes #12425
2016-08-14 17:06:50 +02:00
Gunnar Beutner
ed53366490
Avoid duplicate IDO config updates at startup
...
fixes #12417
2016-08-13 23:31:22 +02:00
Gunnar Beutner
31f816562f
Add namespace qualifier for some assert() calls
...
refs #12408
2016-08-12 13:44:51 +02:00
Gunnar Beutner
24431b3dab
Register deprecated methods in the 'Deprecated' namespace
...
refs #12408
2016-08-12 13:42:22 +02:00
Michael Friedrich
d84872f075
DB IDO: Really do not clear downtimes on checkable upsert
...
refs #12258
refs #12288
2016-08-11 17:43:39 +02:00
Michael Friedrich
41094489b6
DB IDO: Fixed downtime start does not update actual_start_time
...
fixes #12401
2016-08-11 12:10:27 +02:00
Gunnar Beutner
e09fb88cae
Make sure functions are registered with the correct prefix
...
refs #12393
2016-08-10 16:33:17 +02:00
Gunnar Beutner
dc06209e4a
Move internal script functions into the 'Internal' namespace
...
fixes #12338
2016-08-10 06:55:44 +02:00
Michael Friedrich
00f05a8e7e
DB IDO: Do not try to delete downtimes when using the session_token
...
Missed it after modifying the comments.
refs #12258
refs #12288
2016-08-03 16:15:22 +02:00
Michael Friedrich
cd5c9366cf
DB IDO: Use upsert and session token for comment/downtime updates
...
refs #12258
fixes #12288
2016-08-02 14:37:16 +02:00
Gunnar Beutner
0d02b01c02
Use application start-up time for the IDO session token
...
fixes #12250
2016-07-29 08:40:10 +02:00
Michael Friedrich
dcfda534b1
Deprecation warning should include object type and name
...
fixes #12240
2016-07-28 17:43:50 +02:00
Michael Friedrich
ce3d7ab973
DB IDO: Do not clear {host,service,contact}group_members tables on restart
...
fixes #12210
2016-07-25 17:10:27 +02:00
Michael Friedrich
743a726752
state_filters_real shouldn't be visible in the API
...
fixes #12171
2016-07-19 20:09:39 +02:00
Gunnar Beutner
959e2501aa
Avoid duplicate entries in the icinga_objects table for commands
...
refs #12147
2016-07-15 09:40:39 +02:00
Gunnar Beutner
ea57f0045e
Fix deadlock in DbObject::SendVars{Config,Status}Update
...
fixes #12127
fixes #12085
2016-07-12 11:44:36 +02:00
Michael Friedrich
72facb1be0
DB IDO: Log a deprecation warning for categories
...
refs #12024
2016-07-07 15:44:31 +02:00
Michael Friedrich
124c80beab
Require DB IDO v1.14.1 for 2.5.0
...
fixes #11967
2016-07-07 12:27:56 +02:00
Michael Friedrich
f87f20e9ec
DB IDO: Do not populate logentries table by default
...
Not required by Icinga Web 2 and therefore obsolete as default.
fixes #12106
2016-07-06 11:52:20 +02:00
Michael Friedrich
091274e417
Change DB IDO 'categories' attribute to Array notation
...
Example:
categories = [ "DbCatProgramStatus", "DbCatState" ]
The old method with constants and OR is still supported but deprecated.
refs #11445
fixes #12024
2016-06-23 14:55:01 +02:00
Michael Friedrich
14fdb794e2
Allow strings in state and type filters (config, API)
...
fixes #11445
2016-06-23 14:52:45 +02:00
Michael Friedrich
409a385590
DB IDO: Ensure that delete queries for comments/downtimes are matching the index
...
fixes #11993
2016-06-20 17:38:01 +02:00
Michael Friedrich
f4241ba185
DB IDO: Enhance ido check with schema info
...
fixes #11968
2016-06-17 12:43:05 +02:00
Michael Friedrich
6a46706668
DB IDO: Update schema version to 1.14.1
...
The least supported version is still 1.14.0
with the current changes.
refs #10069
refs #11967
2016-06-17 11:23:30 +02:00
Michael Friedrich
0ce41399e0
DB IDO: Ensure to delete outdated comments/downtimes for host/service objects
...
fixes #11688
2016-06-03 14:40:37 +02:00
Michael Friedrich
90f102abf3
Ensure that program status updates are immediately updated in DB IDO
...
fixes #11767
2016-05-11 14:03:40 +02:00
Michael Friedrich
ba82d2eb20
Move CalculateExecutionTime and CalculateLatency into the CheckResult class
...
fixes #11751
2016-05-10 12:16:49 +02:00
Michael Friedrich
23ab6cf78b
Fix: Expired downtimes are not removed
...
fixes #11711
2016-05-02 15:32:46 +02:00
Michael Friedrich
83e0bcddce
IDO: Ensure that the notification insert id is passed to contactnotification inserts
...
We cannot add the notification insert id directly
to the following contactnotifications queries. Instead
we need to pass a DbValue reference which gets set after
the notification insert id is calculated.
The contactnotifications insert queries are fired as query
group calling CanExecuteQuery() and FieldToEscapedString().
If the notification id does not exist yet, the queries are
moved to the end of the queue.
Once the contactnotifications queries are fired the DbValue
reference is destroyed.
This patch also removes the old notification insert id cache
which was broken in many ways.
fixes #11387
2016-03-29 15:12:24 +02:00
Michael Friedrich
98e1d70dab
DB IDO: Fix that downtime is not in effect after restart
...
fixes #10843
2016-03-23 13:42:00 +01:00
Michael Friedrich
67b7df3189
DB IDO: Fix user notification type filters
...
fixes #10766
2016-03-15 14:50:43 +01:00
Michael Friedrich
5b30c9ed2c
DB IDO: PArtially revert change for *group_members
...
Otherwise the index breaks.
refs #11103
2016-02-22 20:23:18 +01:00
Michael Friedrich
99dbb249de
DB IDO: Fix problem with hostgroup_members cleanup
...
fixes #11103
2016-02-08 11:05:27 +01:00
Michael Friedrich
4049cc0b9a
Fix: Deleting an object via API does not disable it in DB IDO
...
fixes #11065
2016-02-05 12:37:00 +01:00
Gunnar Beutner
f234bdd321
Fix crash in IdoCheckTask::ScriptFunc
...
refs #11014
2016-02-02 12:03:12 +01:00
Michael Friedrich
c2cf614d62
Remove debug output, part 2
...
refs #11014
2016-01-29 14:09:50 +01:00
Michael Friedrich
b960850ce3
DB IDO: Only update 'next_check' column when manually scheduling a check
...
Otherwise the changes from #7287 already take care of setting
the proper next check time from inside ProcessCheckResult().
There is no need to use the generic OnNextCheckChanged signal
but instead we're using a new one, locally just for DB IDO.
fixes #11019
2016-01-22 18:42:15 +01:00
Gunnar Beutner
599929b0f6
Update copyright headers for 2016
2016-01-12 08:29:59 +01:00
Gunnar Beutner
1bf27011df
Fix incorrect is_active queries
...
fixes #10891
2016-01-11 14:23:16 +01:00
Michael Friedrich
9c8fdf06cf
Fix crash in DbEvents::RemoveCommentInternal()
...
Missing multiple queries as implemented with RemoveDowntimeInternal().
fixes #10883
2015-12-18 10:52:04 +01:00
Gunnar Beutner
a393c8213e
Don't log IDO statistics when we're not connected
...
refs #10860
2015-12-17 12:09:42 +01:00
Michael Friedrich
6387bec049
Fix duplicate key violation for downtimes
...
refs #10829
2015-12-16 13:57:29 +01:00
Gunnar Beutner
ef8ba6e275
Implement additional query statistics for DB IDO
...
fixes #10860
2015-12-16 10:46:27 +01:00
Michael Friedrich
5b48559d75
Implement support for re-ordering groups of IDO queries
...
fixes #10855
2015-12-15 15:29:48 +01:00
Michael Friedrich
96fa29793c
Avoid duplicate config and status updates on startup
...
fixes #10765
2015-12-15 14:25:08 +01:00
Michael Friedrich
da3d21091c
Fix priority ordering for IDO queries
...
fixes #10829
refs #8714
2015-12-15 11:58:50 +01:00
Gunnar Beutner
372cf07bc4
Clean up the FinishAsyncQueries code a bit
...
refs #8714
2015-12-14 10:34:12 +01:00
Gunnar Beutner
15ca9987fa
Implement support for priorities in the WorkQueue class
...
fixes #8714
2015-12-10 17:06:00 +01:00
Michael Friedrich
0813e69a41
Fix DB IDO events for next_check, etc. updates
...
refs #10817
2015-12-10 15:24:28 +01:00
Michael Friedrich
0285bcefb5
DB IDO: Fix group membership updates for runtime created objects
...
fixes #10604
2015-11-11 12:31:52 +01:00
Gunnar Beutner
e3c75faabc
Implement support for recursive object locks
...
fixes #10596
2015-11-11 10:21:30 +01:00
Michael Friedrich
64c936d387
API Actions: Remove -by-id from actions and require names for comments and downtimes
...
The documentation is updated as well. Furthermore actions provide
detailed error information in case of an exception.
Includes DB IDO schema updates.
fixes #10512
2015-11-06 17:06:12 +01:00
Michael Friedrich
1b9f0a8c77
Add the unique_id for comments/downtimes next to legacy_id to DB IDO
...
fixes #10431
2015-10-30 11:25:07 +01:00
Michael Friedrich
9485938d32
Fix: Unique constraint violation with multiple comment inserts in DB IDO
...
fixes #10491
2015-10-29 16:12:53 +01:00
Michael Friedrich
cf5735e3df
DB IDO: Remove deleted custom variables
...
We cannot clear the custom variable tables on startup and then re-insert
all known custom vars. Instead we "fixed" it by leaving them
in the database only updating their value if changed. We certainly
forgot about deleted custom vars at that point.
Since the older fix must stay in place, we'll use a session
token stored in the backend to check whether the custom
variable has been updated/inserted in the current session, or not.
If the session token does not match, the custom vars are deleted
at the end of the config dump. Ugly but fairly the only performant
solution as CVs don't have an object_id.
fixes #10436
2015-10-29 16:00:06 +01:00
Gunnar Beutner
050c520b2a
Convert Comment/Downtime to config objects
...
fixes #9777
2015-10-28 17:56:29 +01:00
Michael Friedrich
de8aae90e4
DB IDO: Add object_id where clause for icinga_downtimehistory
...
fixes #10110
2015-10-28 17:12:23 +01:00
Gunnar Beutner
13375d74fc
Fix: Changing a group's attributes causes duplicate rows in the icinga_*group_members table
...
fixes #10422
2015-10-26 09:36:13 +01:00
Michael Friedrich
d618762dad
Export original attributes in DB IDO and Livestatus
...
fixes #10392
2015-10-22 15:49:42 +02:00
Gunnar Beutner
4aa0165701
Add getter for endpoint 'connected' attribute
...
fixes #10394
2015-10-22 10:52:38 +02:00
Gunnar Beutner
d01f09f3ef
Hide internal attributes in the API
...
fixes #10393
2015-10-20 08:25:10 +02:00
Michael Friedrich
498ff3c1ee
Add a debug log message for updating the program status table in DB IDO
...
fixes #10379
2015-10-15 18:43:30 +02:00
Gunnar Beutner
5f98fd3e9a
Update schema version in dbconnection.hpp
...
refs #9286
2015-10-01 17:13:33 +02:00
Michael Friedrich
1813c0932c
Remove dead code from old modified attributes
...
refs #9851
2015-09-29 14:24:39 +02:00
Gunnar Beutner
d24af1e639
Fix incorrect value for IdoMysqlConnection::m_AffectedRows
...
refs #10190
2015-09-28 13:19:42 +02:00
Michael Friedrich
8c997255a9
DB IDO: Fix modified custom attribute update query problems
...
fixes #10190
2015-09-24 11:45:44 +02:00
Michael Friedrich
a6d8cea5c2
Update DB IDO on changed object version (create, update, delete)
...
refs #9927
2015-09-17 14:20:44 +02:00
Gunnar Beutner
6fa58a520c
Implement config object sync
...
Adds object version.
refs #9927
2015-09-17 14:20:43 +02:00
Michael Friedrich
50cd694142
Fix wrong calculation for host compat state UNREACHABLE
...
fixes #10058
2015-09-04 13:24:41 +02:00
Gunnar Beutner
f45f6ccd82
Implement support for tracking dependencies between config objects
...
refs #9096
2015-08-25 13:54:05 +02:00
Gunnar Beutner
d8cab2f0e8
Add 'override' keyword to methods
...
refs #9929
2015-08-18 12:45:30 +02:00
Gunnar Beutner
d118b71a2a
Fix compiler warnings
...
fixes #9929
2015-08-18 07:46:04 +02:00
Michael Friedrich
020533842b
Add missing category for IDO query
...
fixes #9928
2015-08-17 11:04:14 +02:00
Gunnar Beutner
071d2f18fb
Rename DynamicObject/DynamicType to ConfigObject/ConfigType
...
fixes #9914
2015-08-15 20:40:41 +02:00
Michael Friedrich
d7970f5bb1
Implement modified attributes v2
...
refs #9081
refs #9093
2015-08-15 20:07:10 +02:00
Michael Friedrich
69e6fc4811
DB IDO: Do not update endpointstatus table on config updates
...
fixes #9634
2015-07-16 13:25:11 +02:00
Michael Friedrich
a788de679c
DB IDO: Add zones, zonestatus tables
...
refs #9286
2015-07-14 18:09:24 +02:00
Michael Friedrich
3fe6b56628
DB IDO: Don't clear endpoint* tables on start/reload
...
fixes #9586
2015-07-08 13:58:12 +02:00
Michael Friedrich
45a0f09532
Fix unused variable in dbevents
...
refs #9055
2015-06-24 14:12:18 +02:00
Michael Friedrich
21b11f9c9a
Fix incorrect type and state filter mapping for User objects in DB IDO
...
fixes #9143
2015-05-15 16:40:32 +02:00
Michael Friedrich
b921439f38
Fix DbEvents::AddCheckableCheckHistory argument
...
refs #9055
2015-04-27 15:06:14 +02:00
Michael Friedrich
7af41e93c0
Fix that downtimes are always "fixed" even if scheduled as "flexible"
...
fixes #9142
2015-04-25 15:06:29 +02:00
Michael Friedrich
2254ac442f
DB IDO: Fix wrong check result timestamp for historical tables
...
refs #9055
2015-04-24 18:14:57 +02:00
Gunnar Beutner
4cb1936c68
Fix another potential deadlock in DB IDO
...
refs #9121
2015-04-22 21:35:43 +02:00
Gunnar Beutner
aa452a780c
Fix deadlock in the IDO
...
fixes #9121
2015-04-20 15:39:45 +02:00
Gunnar Beutner
e4f4c6bc2d
Remove deadlock in db_ido
...
refs #9017
2015-04-14 15:09:50 +02:00
Michael Friedrich
3fc890a2da
DB IDO: Fix status table scheduled_downtime_depth column not updated on downtime removal/end
...
fixes #9017
2015-04-11 11:40:14 +02:00
Michael Friedrich
3d4be0ea58
Don't update scheduleddowntime table w/ trigger_time column when only adding a downtime
...
fixes #9014
2015-04-08 17:06:53 +02:00
Gunnar Beutner
72a7b08480
Move implementation code from thpp files into separate files
...
fixes #8890
2015-03-28 11:08:12 +01:00
Gunnar Beutner
ec7224e3ed
Generate C++ code for type validators
...
fixes #7709
fixes #8867
2015-03-27 07:59:27 +01:00
Gunnar Beutner
16ef84fd35
Use TypeInstance field instead of looking up types by name
...
fixes #8817
2015-03-20 08:15:07 +01:00
Gunnar Beutner
dae206e899
Move the base command templates into libmethods
...
fixes #8775
2015-03-17 08:19:31 +01:00
Gunnar Beutner
100eb0cf8a
Don't update custom vars for each status update
...
fixes #8736
2015-03-13 13:46:00 +01:00
Gunnar Beutner
cd20044e4f
Implement the pending_queries metric for the IDO check task
...
refs #8688
2015-03-13 12:00:30 +01:00
Gunnar Beutner
c996fbb5c4
Build fix
...
refs #8688
2015-03-12 13:44:17 +01:00
Gunnar Beutner
52b33f560f
Improve output for the ido check task
...
refs #8688
2015-03-12 11:51:02 +01:00
Gunnar Beutner
a4d37132bf
Implement a check for IDO database connections
...
fixes #8688
2015-03-12 10:19:12 +01:00
Gunnar Beutner
94fde1a6b2
Add support for using the 1.12.0 IDO database schema
...
fixes #8689
2015-03-12 10:19:12 +01:00
Gunnar Beutner
3046ad5d5e
Fix incorrect value for the process_performance_data column in the icinga_hosts table
...
fixes #8544
2015-03-09 08:12:05 +01:00
Michael Friedrich
c61134d55a
Fix deadlock in DB IDO and external command events
...
refs #8511
2015-03-02 16:20:22 +01:00
Michael Friedrich
4a64d4991b
DB IDO: Fix {host,service}checks command_line value is "Object of type 'icinga::Array'"
...
fixes #8438
2015-02-15 00:24:05 +01:00
Michael Friedrich
48fa1a1418
DB IDO: Fix duplicate entries in scheduleddowntime table
...
fixes #8425
2015-02-12 13:19:27 +01:00
Michael Friedrich
19c374040e
Fix missing persistent_comment, notify_contact columns for acknowledgement table
...
fixes #7871
refs #8298
2015-02-07 23:24:16 +01:00
Michael Friedrich
bb2338631f
Fix last_hard_state missing in StatusDataWriter
...
fixes #8383
2015-02-07 19:37:35 +01:00
Gunnar Beutner
1a23ae94f9
Implement support for updating the program_end_time column
...
fixes #6923
2015-02-04 15:25:10 +01:00
Gunnar Beutner
e7938c9374
Fix crash in DbConnection::ProgramStatusHandler
...
fixes #8288
2015-01-27 09:53:07 +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
9f18211ada
Remove obsolete code
...
refs #7709
2014-12-18 15:57:30 +01:00
Gunnar Beutner
873e294158
Refactor the WorkQueue class to make error reporting easier
...
refs #7709
2014-12-18 15:11:57 +01:00
Gunnar Beutner
1cb0231c05
Refactor how variable scopes work
...
refs #8074
2014-12-14 11:33:45 +01:00
Michael Friedrich
d11286e9a5
DB IDO: Update child object reachability if parentchanges to !{OK,UP}
...
fixes #7683
2014-12-12 16:12:05 +01:00
Michael Friedrich
868d403a8a
DB IDO: Missing last_hard_state column update in {host,service}status tables
...
fixes #8058
2014-12-12 13:25:10 +01:00
Gunnar Beutner
2d53e000c8
Refactor the config validator so that it doesn't require serialized objects
...
refs #7701
2014-11-20 13:28:21 +01:00
Gunnar Beutner
7321e45abc
Implement support for executing remote commands
...
fixes #7559
2014-11-13 14:54:55 +01:00
Gunnar Beutner
e52b2b6509
Fix incorrect IDO queries
...
fixes #7634
2014-11-11 16:36:20 +01:00
Gunnar Beutner
11710ef683
Fix static initializers
...
refs #7634
2014-11-11 13:24:44 +01:00
Jean Flach
0ba2efe97f
Fix some Ido initialization bugs
...
refs #7625
2014-11-11 10:04:37 +01:00
Gunnar Beutner
4df3fd4451
Add missing category type for some IDO queries
...
fixes #7625
2014-11-10 13:21:33 +01:00
Gunnar Beutner
478f03b49a
Replace boost::shared_ptr with boost::intrusive_ptr
...
refs #7622
2014-11-09 16:54:41 +01:00
Gunnar Beutner
684ad2641a
Fix GetInstance() methods for the DbType and config validator registry classes
2014-11-09 13:06:25 +01:00
Gunnar Beutner
9e2aa4c5ed
Fix problem with unresolved symbols
...
refs #7561
2014-11-07 18:37:28 +01:00
Michael Friedrich
58d5c42d9c
DB IDO: Dump custom attributes as json encoded arrays/dictionaries; add 'is_json' column
...
refs #7560
2014-11-04 13:47:45 +01:00
Gunnar Beutner
170c5a59e4
Implement typeof() function
2014-11-03 00:45:14 +01:00
Gunnar Beutner
4677014b6d
Implement support for arrays in custom variables
...
fixes #6544
2014-11-02 07:27:50 +01:00
Gunnar Beutner
9368ff0e03
Update some more log messages
2014-10-20 10:09:57 +02:00
Gunnar Beutner
2d5e9514a5
Refactor logging code
2014-10-19 17:52:17 +02:00
Gunnar Beutner
b18f57a745
Remove logger_fwd.hpp
2014-10-19 14:50:39 +02:00
Gunnar Beutner
92896311f3
Implement support for C/C++ comments in the TI compiler
...
fixes #5018
2014-10-17 19:44:31 +02:00
Michael Friedrich
3fd20d56aa
DB IDO: Add program_version column to programstatus table
...
Bump schema version to 1.11.8
fixes #7391
2014-10-16 12:11:10 +02:00
Gunnar Beutner
6f2ea6bc08
Fix build problems with Oracle Solaris Studio
...
refs #6896
2014-09-02 13:09:17 +02:00
Gunnar Beutner
eb091a87b0
Implement support for unity builds
...
fixes #7034
fixes #7035
2014-08-30 20:02:12 +02:00
Gunnar Beutner
65bec9e904
Clean up some parts of the code
2014-08-17 17:57:41 +02:00
Michael Friedrich
e52848b923
DB IDO: Fix failover_timeout config validator
...
refs #6827
2014-08-15 17:50:38 +02:00
Michael Friedrich
1c98a3a9f7
DB IDO: Add failover_timeout attribute
...
refs #6827
2014-08-15 17:21:12 +02:00
Michael Friedrich
f6c24f8964
DB IDO: Delay connection in HA RunOnce mode
...
refs #6827
refs #6203
2014-08-15 17:21:12 +02:00
Michael Friedrich
d326678e76
DB IDO: Add 'enable_ha' configuration flag
...
This feature is true by default. If disabled all cluster nodes in a high
availability zone will write to their own local database.
TODO: documentation, tests.
refs #6827
refs #6203
2014-08-15 17:21:12 +02:00
Gunnar Beutner
a098fe804b
Fix duplicate rows in icinga_objects
...
fixes #6414
2014-07-16 10:20:01 +02:00
Michael Friedrich
4bfa068e46
Change log message identifier for libdb_ido.
...
Refs #6346
2014-05-28 14:42:01 +02:00
Gunnar Beutner
632026cd9f
Rename C++ header files.
...
Fixes #6291
2014-05-25 16:27:14 +02:00
Gunnar Beutner
215f500b0e
Fix compiler warnings.
...
Refs #5823
2014-05-23 11:05:25 +02:00