Icinga2: Upgrade Error - icinga2-common - undefined symbol

Created on 18 Oct 2019  ·  7Comments  ·  Source: Icinga/icinga2

Describe the bug

When I upgrade (apt-get upgrade) Icinga2 from 2.11 to 2.11.1 the following error apply:

Setting` up icinga2-common (2.11.1-1.bionic) ...
Job for icinga2.service failed because the control process exited with error code.
See "systemctl status icinga2.service" and "journalctl -xe" for details.
invoke-rc.d: initscript icinga2, action "start" failed.
● icinga2.service - Icinga host/service/network monitoring system
   Loaded: loaded (/lib/systemd/system/icinga2.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/icinga2.service.d
           └─limits.conf
   Active: failed (Result: exit-code) since Fri 2019-10-18 14:11:29 CEST; 7ms ago
  Process: 15344 ExecStart=/usr/sbin/icinga2 daemon --close-stdio -e ${ICINGA2_ERROR_LOG} (code=exited, status=127)
  Process: 15331 ExecStartPre=/usr/lib/icinga2/prepare-dirs /etc/default/icinga2 (code=exited, status=0/SUCCESS)
 Main PID: 15344 (code=exited, status=127)

Oct 18 14:11:29 s0icinga2 systemd[1]: Starting Icinga host/service/network monitoring system...
Oct 18 14:11:29 s0icinga2 icinga2[15344]: /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2: symbol lookup error: /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2: undefined symbol: _ZNK5boost16re_detail_10670031cpp_regex_traits_implementationIcE9transformB5cxx11EPKcS4_
Oct 18 14:11:29 s0icinga2 systemd[1]: icinga2.service: Main process exited, code=exited, status=127/n/a
Oct 18 14:11:29 s0icinga2 systemd[1]: icinga2.service: Failed with result 'exit-code'.
Oct 18 14:11:29 s0icinga2 systemd[1]: Failed to start Icinga host/service/network monitoring system.
dpkg: error processing package icinga2-common (--configure):
 installed icinga2-common package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 `icinga2-common

To Reproduce

dpkg --configure icinga2-common

Expected behavior

The upgrade should be work fine and Icinga2 is starting.

Your Environment

Include as many relevant details about the environment you experienced the problem in

  • Version used (icinga2 --version):
    2.11.0 --> 2.11.1

  • Operating System and version:
    Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-65-generic x86_64)

  • Icinga Web 2 version and modules (System - About):
    IcingaWeb2 2.7.4
    businessprocess 2.1.0
    company 0.0.0
    director 1.7.0
    fileshipper 1.0.1
    grafana Master
    incubator 0.5.0
    ipl v0.3.0
    map 1.1.0
    monitoring 2.7.3
    reactbundle 0.7.0
    x509 1.0.0

aresetup

Most helpful comment

Just FYI had a same problem just now.
Upgraded Ubuntu from 16.04 to 18.04 and had the following boost versions installed:

ii  libboost-context1.67.0-icinga:amd64         1.67.0-13.1.xenial                              amd64        provides a sort of cooperative multitasking on a single thread
ii  libboost-coroutine1.67.0-icinga:amd64       1.67.0-13.1.xenial                              amd64        provides a sort of cooperative multitasking on a single thread
ii  libboost-filesystem1.67.0-icinga:amd64      1.67.0-13.1.xenial                              amd64        filesystem operations (portable paths, iteration over directories, etc) in C++
ii  libboost-program-options1.67.0-icinga:amd64 1.67.0-13.1.xenial                              amd64        program options library for C++
ii  libboost-regex1.67.0-icinga:amd64           1.67.0-13.1.xenial                              amd64        regular expression library for C++
ii  libboost-system1.67.0-icinga:amd64          1.67.0-13.1.xenial                              amd64        Operating system (e.g. diagnostics support) library
ii  libboost-thread1.67.0-icinga:amd64          1.67.0-13.1.xenial                              amd64        portable C++ multi-threading

Eventually the problem is due to x > b:

libboost-context1.67.0-icinga:
  Installed: 1.67.0-13.1.xenial
  Candidate: 1.67.0-13.1.xenial
  Version table:
 *** 1.67.0-13.1.xenial 100
        100 /var/lib/dpkg/status
     1.67.0-13.1.bionic 500
        500 http://packages.icinga.com/ubuntu icinga-bionic/main amd64 Packages

"Downgrading" manually resolved the problem:

# apt install libboost-context1.67.0-icinga:amd64=1.67.0-13.1.bionic
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be DOWNGRADED:
  libboost-context1.67.0-icinga

All 7 comments

CI pipeline ran and installed the package as ok, and of course I tested this manually in Docker prior to announcement (https://github.com/Icinga/icinga2/blob/master/RELEASE.md#ubuntu). Wondering about the Boost library versions installed, are you holding back some dependencies or are you using custom Boost packages?

root@6510a802f7df:/# dpkg -l *boost*

Wondering about the Boost library versions installed, are you holding back some dependencies or are you using custom Boost packages?

Yes that's solve the problem. How ever there was even installed not the newest boost library. I have removed it manually and install it again as dependency of the icinga2-ido-mysql packages. After this step, it works!

I don't holding dependencies back or use some custom packages. Thats wired. But now it works. Thanks a lot for the hint with the boost library.

Very strange, the package actually depends on the newer versions since 2.11. Glad you've solved it by yourself 👍

We are facing the very same issue here. Can you please shed some light on which libboost dependencies are needed exactly. We also don't hold back any libboost packages.

@hashfunktion Which libraries in which versions were affected in your case?

Thanks

I don't know the specific versions, sorry. But have you try to remove the packages without purge the configuration and install the packages with the dependencies again?

I didn't want to just uninstall anything because it's a live production system ;)

Anyway, after uninstalling both icinga2* and libboost* and then reinstalling icinga2 plus dependencies it now seems to work fine again.

Further investigation showed a supposedly incomplete OS upgrade (xenial => bionic) left some old dependencies....

Just FYI had a same problem just now.
Upgraded Ubuntu from 16.04 to 18.04 and had the following boost versions installed:

ii  libboost-context1.67.0-icinga:amd64         1.67.0-13.1.xenial                              amd64        provides a sort of cooperative multitasking on a single thread
ii  libboost-coroutine1.67.0-icinga:amd64       1.67.0-13.1.xenial                              amd64        provides a sort of cooperative multitasking on a single thread
ii  libboost-filesystem1.67.0-icinga:amd64      1.67.0-13.1.xenial                              amd64        filesystem operations (portable paths, iteration over directories, etc) in C++
ii  libboost-program-options1.67.0-icinga:amd64 1.67.0-13.1.xenial                              amd64        program options library for C++
ii  libboost-regex1.67.0-icinga:amd64           1.67.0-13.1.xenial                              amd64        regular expression library for C++
ii  libboost-system1.67.0-icinga:amd64          1.67.0-13.1.xenial                              amd64        Operating system (e.g. diagnostics support) library
ii  libboost-thread1.67.0-icinga:amd64          1.67.0-13.1.xenial                              amd64        portable C++ multi-threading

Eventually the problem is due to x > b:

libboost-context1.67.0-icinga:
  Installed: 1.67.0-13.1.xenial
  Candidate: 1.67.0-13.1.xenial
  Version table:
 *** 1.67.0-13.1.xenial 100
        100 /var/lib/dpkg/status
     1.67.0-13.1.bionic 500
        500 http://packages.icinga.com/ubuntu icinga-bionic/main amd64 Packages

"Downgrading" manually resolved the problem:

# apt install libboost-context1.67.0-icinga:amd64=1.67.0-13.1.bionic
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be DOWNGRADED:
  libboost-context1.67.0-icinga
Was this page helpful?
0 / 5 - 0 ratings