105 Commits

Author SHA1 Message Date
Gunnar Beutner
9d436605f0 Fix compatibility with CMake < 3.1 2018-01-18 15:12:46 +01:00
Gunnar Beutner
c2fb9fe226 Use initializer lists for arrays and dictionaries 2018-01-16 12:27:44 +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
ac155d1dda Apply clang-tidy fix 'modernize-redundant-void-arg' 2018-01-04 12:24:57 +01:00
Gunnar Beutner
2f953d6204 Implement shim for libmysqlclient and libpq 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
858873b940 Replace boost::bind/boost::function with std::bind/std::function 2017-11-27 15:15:11 +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
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
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 b028ff2c33cc580d6cb0c063575d77a2f18ad0b1.

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
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
288413f046 Replace BOOST_FOREACH with range-based for loops
fixes #12538
2016-08-25 06:46:17 +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
Gunnar Beutner
ed53366490 Avoid duplicate IDO config updates at startup
fixes #12417
2016-08-13 23:31: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
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
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
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