# Icinga 2.x CHANGELOG

Please check doc/1-about.md.

## What's New

### What's New in Version 2.1.1

#### Issues

* Bug #6147: Link libcJSON against libm
* Bug #6696: make test fails on openbsd
* Bug #6841: Too many queued messages
* Bug #6862: SSL_read errors during restart
* Bug #6981: SSL errors with interleaved SSL_read/write
* Bug #7029: icinga2.spec: files-attr-not-set for python-icinga2 package
* Bug #7032: "Error parsing performance data" in spite of "enable_perfdata = false"
* Bug #7036: Remove validator for the Script type
* Bug #7037: icinga2-list-objects doesn't work with Python 3
* Bug #7038: Fix rpmlint errors
* Bug #7042: icinga2-list-objects complains about Umlauts and stops output
* Bug #7044: icinga2 init-script terminates with exit code 0 if $DAEMON is not in place or not executable
* Bug #7047: service icinga2 status - prints cat error if the service is stopped
* Bug #7058: Exit code is not initialized for some failed checks
* Bug #7065: pipe2 returns ENOSYS on GNU Hurd and Debian kfreebsd
* Bug #7072: GraphiteWriter should ignore empty perfdata value
* Bug #7080: Missing differentiation between service and systemctl
* Bug #7096: new SSL Errors with too many queued messages
* Bug #7115: Build fails on Haiku
* Bug #7123: Manubulon-Plugin conf Filename wrong
* Bug #7139: GNUInstallDirs.cmake outdated
* Bug #7167: Segfault using cluster in TlsStream::IsEof
* Bug #7168: fping4 doesn't work correctly with the shipped command-plugins.conf
* Bug #7186: Livestatus hangs from time to time
* Bug #7195: fix memory leak ido_pgsql
* Bug #7210: clarify on db ido upgrades
* Feature #6719: Change log message for checking/sending notifications
* Feature #7028: Document how to use @ to escape keywords
* Feature #7033: Add include guards for mkclass files
* Feature #7034: Ensure that namespaces for INITIALIZE_ONCE and REGISTER_TYPE are truly unique
* Feature #7035: Implement support for unity builds
* Feature #7039: Figure out a better way to set the version for snapshot builds
* Feature #7040: Unity builds: Detect whether __COUNTER__ is available
* Feature #7041: Enable unity build for RPM/Debian packages
* Feature #7070: Explain event commands and their integration by a real life example (httpd restart via ssh)
* Feature #7158: Extend documentation for icinga-web on Debian systems

### What's New in Version 2.1.0

#### Changes

* DB IDO schema upgrade ([MySQL](#upgrading-mysql-db),[PostgreSQL](#upgrading-postgresql-db) required!
    * new schema version: **1.11.7**
    * RPMs install the schema files into `/usr/share/icinga2-ido*` instead of `/usr/share/doc/icinga2-ido*` #6881
* [Information for config objects](#list-configuration-objects) using `icinga2-list-objects` script #6702
* Add Python 2.4 as requirement #6702
* Add search path: If `-c /etc/icinga2/icinga2.conf` is omitted, use `SysconfDir + "/icinga2/icinga2.conf"` #6874
* Change log level for failed commands #6751
* Notifications are load-balanced in a [High Availability cluster setup](#high-availability-notifications) #6203
    * New config attribute: `enable_ha`
* DB IDO "run once" or "run everywhere" mode in a [High Availability cluster setup](#high-availability-db-ido) #6203 #6827
    * New config attributes: `enable_ha` and `failover_timeout`
* RPMs use the `icingacmd` group for /var/{cache,log,run}/icinga2 #6948

#### Issues

* Bug #6881: make install does not install the db-schema
* Bug #6915: use _rundir macro for configuring the run directory
* Bug #6916: External command pipe: Too many open files
* Bug #6917: enforce /usr/lib as base for the cgi path on SUSE distributions
* Bug #6942: ExternalCommandListener fails open pipe: Too many open files
* Bug #6948: check file permissions in /var/cache/icinga2
* Bug #6962: Commands are processed multiple times
* Bug #6964: Host and service checks stuck in "pending" when hostname = localhost a parent/satellite setup
* Bug #7001: Build fails with Boost 1.56
* Bug #7016: 64-bit RPMs are not installable
* Feature #5219: Cluster support for modified attributes
* Feature #6066: Better log messages for cluster changes
* Feature #6203: Better cluster support for notifications / IDO
* Feature #6205: Log replay sends messages to instances which shouldn't get those messages
* Feature #6702: Information for config objects
* Feature #6704: Release 2.1
* Feature #6751: Change log level for failed commands
* Feature #6874: add search path for icinga2.conf
* Feature #6898: Enhance logging for perfdata/graphitewriter
* Feature #6919: Clean up spec file
* Feature #6920: Recommend related packages on SUSE distributions
* API - Bug #6998: ApiListener ignores bind_host attribute
* DB IDO - Feature #6827: delay ido connect in ha cluster
* Documentation - Bug #6870: Wrong object attribute 'enable_flap_detection'
* Documentation - Bug #6878: Wrong parent in Load Distribution
* Documentation - Bug #6909: clarify on which config tools are available
* Documentation - Bug #6968: Update command arguments 'set_if' and beautify error message
* Documentation - Bug #6995: Keyword "required" used inconsistently for host and service "icon_image*" attributes
* Documentation - Feature #6651: Migration: note on check command timeouts
* Documentation - Feature #6703: Documentation for zones and cluster permissions
* Documentation - Feature #6743: Better explanation for HA config cluster
* Documentation - Feature #6839: Explain how the order attribute works in commands
* Documentation - Feature #6864: Add section for reserved keywords
* Documentation - Feature #6867: add section about disabling re-notifications
* Documentation - Feature #6869: Add systemd options: enable, journal
* Documentation - Feature #6922: Enhance Graphite Writer description
* Documentation - Feature #6949: Add documentation for icinga2-list-objects
* Documentation - Feature #6997: how to add a new cluster node
* Documentation - Feature #7018: add example selinux policy for external command pipe
* Plugins - Feature #6650: Plugin Check Commands: add manubulon snmp plugins


### What's New in Version 2.0.2

* Bug #6450: ipmi-sensors segfault due to stack size
* Bug #6479: Notifications not always triggered
* Bug #6501: Classic UI Debian/Ubuntu: apache 2.4 requires 'a2enmod cgi' & apacheutils installed
* Bug #6548: Add cmake constant for PluginDir
* Bug #6549: GraphiteWriter regularly sends empty lines
* Bug #6550: add log message for invalid performance data
* Bug #6589: Command pipe blocks when trying to open it more than once in parallel
* Bug #6621: Infinite loop in TlsStream::Close
* Bug #6627: Location of the run directory is hard coded and bound to "local_state_dir"
* Bug #6659: RPMLint security warning - missing-call-to-setgroups-before-setuid /usr/sbin/icinga2
* Bug #6682: Missing detailed error messages on ApiListener SSL Errors
* Bug #6686: Event Commands are triggered in OK HARD state everytime
* Bug #6687: Remove superfluous quotes and commas in dictionaries
* Bug #6713: sample config: add check commands location hint (itl/plugin check commands)
* Bug #6718: "order" attribute doesn't seem to work as expected
* Bug #6724: TLS Connections still unstable in 2.0.1
* Bug #6756: GraphiteWriter: Malformatted integer values
* Bug #6765: Config validation without filename argument fails with unhandled exception
* Bug #6768: Repo Error on RHEL 6.5
* Bug #6773: Order doesn't work in check ssh command
* Bug #6782: The "ssl" check command always sets -D
* Bug #6790: Service icinga2 reload command does not cause effect
* Bug #6809: additional group rights missing when Icinga started with -u and -g
* Bug #6810: High Availablity does not synchronise the data like expected
* Bug #6820: Icinga 2 crashes during startup
* Bug #6821: [Patch] Fix build issue and crash found on Solaris, potentially other Unix OSes
* Bug #6825: incorrect sysconfig path on sles11
* Bug #6832: Remove if(NOT DEFINED ICINGA2_SYSCONFIGFILE) in etc/initsystem/CMakeLists.txt
* Bug #6840: Missing space in error message
* Bug #6849: Error handler for getaddrinfo must use gai_strerror
* Bug #6852: Startup logfile is not flushed to disk
* Bug #6856: event command execution does not call finish handler
* Bug #6861: write startup error messages to error.log
* Feature #5818: SUSE packages
* Feature #6655: Build packages for el7
* Feature #6688: Rename README to README.md
* Feature #6698: Require command to be an array when the arguments attribute is used
* Feature #6700: Release 2.0.2
* Feature #6783: Print application paths for --version
* DB IDO - Bug #6414: objects and their ids are inserted twice
* DB IDO - Bug #6608: Two Custom Variables with same name, but Upper/Lowercase creating IDO duplicate entry
* DB IDO - Bug #6646: NULL vs empty string
* DB IDO - Bug #6850: exit application if ido schema version does not match
* Documentation - Bug #6652: clarify on which features are required for classic ui/web/web2
* Documentation - Bug #6708: update installation with systemd usage
* Documentation - Bug #6711: icinga Web: wrong path to command pipe
* Documentation - Bug #6725: Missing documentation about implicit dependency
* Documentation - Bug #6728: wrong path for the file 'localhost.conf'
* Migration - Bug #6558: group names quoted twice in arrays
* Migration - Bug #6560: Service dependencies aren't getting converted properly
* Migration - Bug #6561: $TOTALHOSTSERVICESWARNING$ and $TOTALHOSTSERVICESCRITICAL$ aren't getting converted
* Migration - Bug #6563: Check and retry intervals are incorrect
* Migration - Bug #6786: Fix notification definition if no host_name / service_description given
* Plugins - Feature #6695: Plugin Check Commands: Add expect option to check_http
* Plugins - Feature #6791: Plugin Check Commands: Add timeout option to check_ssh

#### Changes

* DB IDO schema upgrade required (new schema version: 1.11.6)

### What's New in Version 2.0.1

* Bug #6316: application fails to start on wrong log file permissions but does not tell about it
* Bug #6368: Deadlock in ApiListener::RelayMessage
* Bug #6373: base64 on CentOS 5 fails to read certificate bundles
* Bug #6388: Debian package icinga2-classicui needs versioned dependency of icinga-cgi*
* Bug #6488: build warnings
* Bug #6492: icinga2.state could not be opened
* Bug #6493: Copyright problems
* Bug #6498: icinga2 cannot be built with both systemd and init.d files
* Bug #6510: Reminder notifications are sent on disabled services
* Bug #6526: htpasswd should be installed with icinga2-classicui on Ubuntu
* Bug #6529: parsing of double defined command can generate unexpected errors
* Bug #6537: Icinga doesn't send SetLogPosition messages when one of the endpoints fails to connect
* Bug #6551: Improve systemd service definition
* Bug #6565: Dependencies should cache their parent and child object
* Bug #6574: Check command result doesn't match
* Bug #6576: Remove line number information from stack traces
* Bug #6588: Notifications causing segfault from exim
* Bug #6605: Please add --sni option to http check command
* Bug #6612: Icinga stops updating IDO after a while
* Bug #6617: TLS connections are still unstable
* Bug #6620: icinga2-build-ca shouldn't prompt for DN
* Bug #6622: icinga2-sign-key creates ".crt" and ".key" files when the CA passphrase is invalid
* Bug #6657: ICINGA2_SYSCONFIGFILE should use full path using CMAKE_INSTALL_FULL_SYSCONFDIR
* Bug #6662: Increase icinga.cmd Limit
* Bug #6665: Build fails when MySQL is not installed
* Bug #6671: enabled_notification doesn't work as expected
* Bug #6672: Icinga crashes after "Too many queued messages"
* Bug #6673: enable_notifications = false for users has no effect
* Feature #6531: Add port option to check imap/pop/smtp and a new dig
* Feature #6581: Add more options to snmp check
* DB IDO - Bug #5577: PostgreSQL string escaping
* DB IDO - Bug #6577: icinga2-ido-pgsql snapshot package missing dependecy dbconfig-common
* Documentation - Bug #6506: Array section confusing
* Documentation - Bug #6592: Documentation for || and && is missing
* Documentation - Feature #6658: change docs.icinga.org/icinga2/latest to git master
* Livestatus - Bug #6494: Thruk Panorama View cannot query Host Status
* Livestatus - Feature #5312: OutputFormat python
* Migration - Bug #6559: $SERVICEDESC$ isn't getting converted correctly

#### Changes

### Archive
