sql-info.de
November 1, 2020

Oracle | systemd, dbus, $ORACLE_HOME/lib and undefined symbol: XML_SetHashSalt

If you have a CentOS or Fedora system with Oracle installed, and the system doesn't come up after a reboot (in my case it just hung with nothing obvious happening), it's highly likely you've added $ORACLE_HOME/lib to /etc/ld.so.conf (or preferably as a separate file under /etc/ld.so.conf.d/), which means Oracle's version of the libexpat library is prioritized, but this is lacking the XML_SetHashSalt symbol required by dbus, meaning the whole systemd caboodle just falls over and dies.

The precise error (from /var/log/messages) was:

dbus-daemon: /usr/bin/dbus-daemon: symbol lookup error: /usr/bin/dbus-daemon: undefined symbol: XML_SetHashSalt

The solution is simply to remove the entry from /etc/ld.so.conf or wherever and run ldconfig before rebooting the system.

Provision of the Oracle library path will then have be done at individual user level with e.g.

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

(yes, we know it's considered harmful).

Hat-tip to Laurenz Albe (of oracle_fdw fame) in this Stackoverflow question: Fedora Linux cannot boot after installing Oracle XE 18.4

Posted at 7:58 PM

Post a comment
Name:
*
E-Mail:
address will not be displayed
Homepage:
Comment: