Jean Flach
1da6b2c883
Fix whitespaces in CMakeLists files
...
Uses 2 space indentation as standard
2018-01-19 09:19:40 +01:00
Gunnar Beutner
9d436605f0
Fix compatibility with CMake < 3.1
2018-01-18 15:12:46 +01:00
Gunnar Beutner
2a9dceb367
Use CMake object libraries for our libs
2018-01-17 04:28:21 +01:00
Gunnar Beutner
c2fb9fe226
Use initializer lists for arrays and dictionaries
2018-01-16 12:27:44 +01:00
Michael Friedrich
f99f5bcf17
Fix wrong schema constraint for fresh 2.8.0 installations
...
This fix is only needed for a fresh 2.8.0 setup, older versions
and upgrades to current do not need this (can be applied as idempotent
update).
fixes #5947
2018-01-16 09:49:46 +01:00
Michael Insel
6eccdff621
Change a bunch more copyright headers for 2018
...
This changes more copyright headers for 2018.
2018-01-08 18:05:12 +01:00
Gunnar Beutner
91c256261a
Apply clang-tidy fix 'modernize-use-default-member-init'
2018-01-04 12:24:58 +01:00
Gunnar Beutner
e0174b8f3f
Apply clang-tidy fix 'modernize-return-braced-init-list'
2018-01-04 12:24:57 +01:00
Gunnar Beutner
e3ad0be769
Apply clang-tidy fix 'modernize-use-auto'
2018-01-04 12:24:57 +01:00
Gunnar Beutner
621eed3f13
Apply clang-tidy fix 'modernize-pass-by-value'
2018-01-04 12:24:57 +01:00
Gunnar Beutner
9ca682496c
Apply clang-tidy fix 'modernize-use-override'
2018-01-04 12:24:57 +01:00
Gunnar Beutner
ac155d1dda
Apply clang-tidy fix 'modernize-redundant-void-arg'
2018-01-04 12:24:57 +01:00
Gunnar Beutner
efe99a3e5e
Add the final keyword to classes
2018-01-04 05:20:20 +00:00
Gunnar Beutner
75e2473616
Clean up source lists in the CMakeLists.txt files
2018-01-03 11:47:46 +01:00
Gunnar Beutner
2f953d6204
Implement shim for libmysqlclient and libpq
2018-01-02 23:29:48 +01:00
Gunnar Beutner
90496b5456
Build libraries as static libraries
2018-01-02 23:29:48 +01:00
Michael Insel
158ae2188e
Change copyright header for 2018
2018-01-02 12:08:55 +01:00
Jean Flach
2636e6a77a
Whitespace fix
...
What does this change?
* Remove use of spaces for formatting
These could be found by using `grep -r -l -P '^\t+ +[^*]'
* Removal of training whitespaces
* A few lines longer than 120 chars
2017-12-20 14:53:52 +01:00
Gunnar Beutner
1ad83886ac
Replace a few more NULLs with nullptr
2017-12-14 15:37:20 +01:00
Gunnar Beutner
325e4a2fb9
Use nullptr instead of <Type>::Ptr()
2017-11-30 17:47:09 +01:00
Gunnar Beutner
3c60fbf75d
Use std::vector::emplace_back instead of std::vector::push_back
2017-11-30 17:47:09 +01:00
Gunnar Beutner
6d09efc907
Use std::shared_ptr instead of boost::shared_ptr
2017-11-30 17:41:00 +01:00
Gunnar Beutner
858873b940
Replace boost::bind/boost::function with std::bind/std::function
2017-11-27 15:15:11 +01:00
Eric Lippmann
6f6703042e
ido: Drop unused instance_id indices from comments, downtimes and their related history tables
2017-11-07 16:37:12 +01:00
Jean Flach
1632415370
Fix commenthistory
...
refs #5492
2017-11-07 16:37:12 +01:00
Jean Flach
30be02bcae
Alter DowntimeRemoval behaviour
...
This adds an additional index to the downtimehistory and updates the
dbevents in a way that it uses that index
2017-11-07 16:37:12 +01:00
Michael Friedrich
d366a63510
Add API & Cluster stats to /v1/status & icinga check performance metrics
...
refs #5133
2017-05-24 16:21:05 +02:00
Michael Friedrich
79dcb789c2
Move PerfdataValue() class into base library
...
This is required for libremote and ApiListener stats in #5133
2017-05-15 16:32:29 +02:00
Michael Friedrich
452f8a1f0d
Merge pull request #5042 from mbrgm/upgrade-docs-link
...
Add link to upgrade documentation to DB IDO log message
2017-05-09 16:17:58 +02:00
Alexander A. Klimov
0da226163f
Don't call mysql_error() after a failure of mysql_init()
...
refs #3664
2017-05-04 12:22:34 +02:00
Andreas Scherbaum
775bee8fe1
Replace http:// links with https:// links where a secure website exists
...
Leave out tests and third party tools, and license strings
fixes #5151
Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-04-20 11:33:27 +02:00
Michael Friedrich
900b33dc5d
IDO: Do not terminate Icinga 2 if the database schema version does not match
...
Instead, log an error and continue.
fixes #4440
2017-03-28 10:16:07 +02:00
Marius Bergmann
38d7f9a19e
Add link to upgrade documentation to log message
...
When there's a schema version mismatch after an upgrade, the following
message is logged:
```
Schema version 'x.y.z' does not match the required version 'x.y.z' (or
newer)! Please check the upgrade documentation.
```
After reading this log message, users have to search for the upgrade
section in the docs in order to perform the necessary steps.
I added the URL for the relevant sections to the log message, so users
can simply click/copy it.
2017-02-28 17:02:10 +01:00
Michael Friedrich
1ad26b8524
IDO MySQL: Don't immediately execute an upsert insert query callback
...
refs #4603
2017-02-22 17:36:17 +01:00
Michael Friedrich
6f1efff46c
Add more debug build logging to IDO MySQL
...
refs #4603
2017-02-22 17:35:57 +01:00
Michael Friedrich
e5f5284838
Add logging for started/stopped features
...
fixes #3557
2017-02-08 15:40:27 +01:00
Markus Frosch
c34feb1fa5
ido/mysql: Remove timestamp defaults for compliance with MySQL 5.7
...
refs #4950
2017-01-24 17:14:06 +01:00
Markus Frosch
84f9824109
ido/mysql: Fix IDO upgrade compliance against MySQL 5.7
...
refs #4950
2017-01-24 17:13:49 +01:00
Markus Frosch
399827c62e
Fix IDO MySQL schema for MySQL >= 5.7
...
NOTE: A schema update doesn't seem to be needed, MySQL is updating
internally.
The problem comes up on fresh schema imports on MySQL 5.7.
fixes #13633
2017-01-11 17:37:17 +01:00
Michael Friedrich
b7caf0820d
Ensure that *.icinga.com is used everywhere
...
fixes #13897
fixes #13277
2017-01-10 17:19:12 +01:00
Michael Friedrich
d076617caa
Revert "DB IDO: Make sure that all result sets are processed before sending another query"
...
This reverts commit b028ff2c33
.
refs #12597
refs #13321
2016-11-25 15:53:07 +01:00
Michael Friedrich
b028ff2c33
DB IDO: Make sure that all result sets are processed before sending another query
...
fixes #12597
2016-11-22 15:56:05 +01:00
Eric Lippmann
69cb383b34
ido-mysql: Upgrade timestamp columns to default to NULL
...
refs #10502
2016-11-18 11:09:50 +01:00
Eric Lippmann
bdb3f88b25
ido-mysql: Bump schema version to 1.14.2
...
refs #10502
2016-11-18 11:09:50 +01:00
Eric Lippmann
0b9046a030
ido-mysql: Don't set the SQL mode to NO_AUTO_VALUE_ON_ZERO
...
This mode is obsolete because timestamp columns now default to NULL instead of '0000-00...'.
refs #10502
2016-11-18 11:09:50 +01:00
Eric Lippmann
1bb363091c
ido-mysql: Change timestamp columns to default to NULL in the schema
...
refs #10502
2016-11-18 11:09:50 +01:00
Eric Lippmann
8a21b4af2f
ido-mysql: Add yet empty v2.6.0 schema upgrade script
...
refs #10502
2016-11-18 11:09:50 +01:00
Gunnar Beutner
06cb3cf875
Another build fix for Windows
...
refs #9182
2016-08-31 13:43:50 +02:00
Gunnar Beutner
68dceaab06
Replace boost::exception_ptr with std::exception_ptr
...
refs #9182
2016-08-30 20:46:23 +02:00
Gunnar Beutner
4dbc07e2bc
Improve support for MySQL >=5.7
...
fixes #12558
2016-08-27 10:20:59 +02:00
Gunnar Beutner
30762e5330
Set versions for all internal libraries
...
fixes #12552
2016-08-25 17:56:18 +02:00
Gunnar Beutner
288413f046
Replace BOOST_FOREACH with range-based for loops
...
fixes #12538
2016-08-25 06:46:17 +02:00
Gunnar Beutner
78c249b96b
Fix compiler warnings in DB IDO
...
refs #12534
2016-08-25 05:00:46 +02:00
Gunnar Beutner
429d11daa8
Fix compiler warnings
...
fixes #12534
2016-08-24 20:33:34 +02:00
Gunnar Beutner
ae1ab5f865
Implement unit tests for state changes
...
fixes #12530
2016-08-24 19:45:52 +02:00
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
2e8d3d3934
Implement support for incremental IDO updates
...
fixes #12435
2016-08-15 14:43:11 +02:00
Rune Darrud
16d1f1893e
Fix typo in mysql schema
...
fixes #12423
2016-08-14 13:03:49 +02:00
Gunnar Beutner
ed53366490
Avoid duplicate IDO config updates at startup
...
fixes #12417
2016-08-13 23:31:22 +02:00
Michael Friedrich
1ff6939f90
Fix missing MySQL session_token changes
...
refs #12258
refs #12288
2016-08-02 15:05:21 +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
Michael Friedrich
53930e321c
DB IDO: Ensure that queries are not executed if categories don't match
...
refs #12147
refs #12147
2016-08-02 14:27:20 +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
ce3d7ab973
DB IDO: Do not clear {host,service,contact}group_members tables on restart
...
fixes #12210
2016-07-25 17:10:27 +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
1bd235b9fb
Improve IDO performance
...
refs #12147
2016-07-13 14:44:53 +02:00
Michael Friedrich
ca42b4658a
DB IDO: Change alias column to varchar(255) in MySQL
...
fixes #10061
2016-07-07 18:48:09 +02:00
Michael Friedrich
a0a5989181
Add missing index on statehistory table for DB IDO cleanup
...
fixes #12107
2016-07-06 12:17:41 +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
7f56a04dd5
DB IDO: Add missing indexes for icinga_endpoints* and icinga_zones* tables
...
fixes #10066
2016-06-22 12:56:24 +02:00
Michael Friedrich
067cb8d283
DB IDO: Fix overflow in current_notification_number column (MySQL)
...
fixes #11962
2016-06-22 12:13:49 +02:00
Michael Friedrich
f10289aa71
DB IDO: Add missing object_id index for icinga_{scheduleddowntime,comments} tables
...
fixes #10070
refs #11947
2016-06-20 17:15:09 +02:00
Michael Friedrich
f610e56a59
DB IDO: Fix missing schema version update in {mysql,pgsql}.sql
...
refs #10069
refs #11967
2016-06-20 16:17:06 +02:00
Lee Clemens
759818d289
DB IDO: Make check_source a varchar(255) column
...
fixes #10069
Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-06-17 11:03:26 +02:00
Gunnar Beutner
d415ff7373
Add missing OnConfigLoaded calls in Ido{My,Pg}sqlConnection
...
fixes #11951
2016-06-16 14:22:20 +02:00
Gunnar Beutner
ff57b0ccd6
Add name attribute for the WorkQueue class
...
fixes #10816
2016-06-14 09:08:04 +02:00
Gunnar Beutner
93da47a670
Fix PostgreSQL warnings on startup
...
fixes #11798
2016-05-17 10:32:38 +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
Lee Clemens
7050529976
Add SSL support for the IdoMysqlConnection feature
...
fixes #9725
Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-05-03 15:01:32 +02:00
Gunnar Beutner
4a32211de2
Fix crash in Ido{Mysql,Pgsql}Connection::ExecuteMultipleQueries
...
fixes #11639
2016-04-21 09:17:40 +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
04a4049a4d
Increase query queue size for testing
...
refs #10963
2016-02-12 14:15:24 +01:00
Gunnar Beutner
599929b0f6
Update copyright headers for 2016
2016-01-12 08:29:59 +01:00
Michael Friedrich
6387bec049
Fix duplicate key violation for downtimes
...
refs #10829
2015-12-16 13:57:29 +01:00
Gunnar Beutner
346c0cbb3c
Fix crash in Ido*Connection::InternalExecuteMultipleQueries
...
fixes #10862
2015-12-16 11:29:06 +01:00
Gunnar Beutner
ef8ba6e275
Implement additional query statistics for DB IDO
...
fixes #10860
2015-12-16 10:46:27 +01:00
Michael Friedrich
1add333a57
DB IDO: Add a log message when the connection handling is completed
...
fixes #10857
2015-12-15 16:50:17 +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
0239acc48e
Fix invalid notification_id in DB IDO query
...
fixes #8976
2015-12-15 11:59:06 +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
Gunnar Beutner
fba0b493cd
Make sure that all strings in the IDO database are UTF8-encoded
...
fixes #10554
2015-12-10 12:26:19 +01:00
Gunnar Beutner
d78a081727
Improve performance data for DB IDO
...
refs #9079
2015-11-07 07:51:41 +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
3b902b51e2
Change session_token to integer timestamp
...
fixes #10529
2015-11-05 18:05:30 +01:00
Michael Friedrich
dda05f0322
Fix: Async mysql queries aren't logged in the debug log
...
fixes #10540
2015-11-05 15:43:09 +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
4d784dd075
DB IDO: Add an index for CV session delete
...
The DELETE statement might become painfully slow on
large installations.
refs #10436
2015-10-29 16:18:49 +01:00