[ZBX-19801] libpq.so.5: no version information available (required by zabbix_proxy) Created: 2021 Aug 12 Updated: 2024 Sep 06 Resolved: 2022 Jul 19 |
|
Status: | Closed |
Project: | ZABBIX BUGS AND ISSUES |
Component/s: | Documentation (D) |
Affects Version/s: | 5.0.17, 5.4.3, 6.0.0alpha4 |
Fix Version/s: | 5.0.26rc1, 6.0.7rc1, 6.2.1rc1, 6.4.0alpha1, 6.4 (plan) |
Type: | Problem report | Priority: | Minor |
Reporter: | Aigars Kadikis | Assignee: | Jurijs Klopovskis |
Resolution: | Fixed | Votes: | 6 |
Labels: | None | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified |
Issue Links: |
|
||||||||||||
Team: | |||||||||||||
Sprint: | Sprint 81 (Oct 2021), Sprint 82 (Nov 2021), Sprint 83 (Dec 2021), Sprint 84 (Jan 2022), Sprint 85 (Feb 2022), Sprint 86 (Mar 2022), Sprint 87 (Apr 2022), Sprint 88 (May 2022), Sprint 89 (Jun 2022), Sprint 90 (Jul 2022) | ||||||||||||
Story Points: | 1 |
Description |
While reloading proxy cache it states: # zabbix_proxy -R config_cache_reload zabbix_proxy: /usr/pgsql-13/lib/libpq.so.5: no version information available (required by zabbix_proxy) zabbix_proxy [15173]: command sent successfully Environment: [root@pg13 ~]# cat /etc/*release* CentOS Linux release 8.3.2011 Derived from Red Hat Enterprise Linux 8.3 NAME="CentOS Linux" VERSION="8" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="8" PLATFORM_ID="platform:el8" PRETTY_NAME="CentOS Linux 8" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:8" HOME_URL="https://centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-8" CENTOS_MANTISBT_PROJECT_VERSION="8" CentOS Linux release 8.3.2011 CentOS Linux release 8.3.2011 cpe:/o:centos:centos:8 Zabbix packages: [root@pg13 ~]# rpm -qa|grep zabbix zabbix-release-5.4-1.el8.noarch zabbix-sql-scripts-5.4.3-1.el8.noarch zabbix-proxy-pgsql-5.4.3-1.el8.x86_64 While listing version of proxy: [root@pg13 ~]# zabbix_proxy -V zabbix_proxy: /usr/pgsql-13/lib/libpq.so.5: no version information available (required by zabbix_proxy) zabbix_proxy (Zabbix) 5.4.3 Revision 68dc2b05cb 21 July 2021, compilation time: Jul 21 2021 10:38:52 Copyright (C) 2021 Zabbix SIA License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it according to the license. There is NO WARRANTY, to the extent permitted by law. This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/). Compiled with OpenSSL 1.1.1g FIPS 21 Apr 2020 Running with OpenSSL 1.1.1g FIPS 21 Apr 2020 SELinux: [root@pg13 ~]# getenforce Permissive P.S. The PostgreSQL server was installed by following instructions at: https://www.postgresql.org/download/linux/redhat/ More precisely:
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo dnf -qy module disable postgresql
sudo dnf install -y postgresql13-server
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
sudo systemctl enable postgresql-13
sudo systemctl start postgresql-13
|
Comments |
Comment by dimir [ 2021 Aug 13 ] |
This is not a Zabbix issue but deployment issue. Looks like zabbix_proxy was copied on the host where libpq library version is older than the one on the host where zabbix proxy was compiled. It is a clear Won't Fix. |
Comment by dimir [ 2021 Oct 22 ] |
My machine: $ cat /etc/redhat-release CentOS Linux release 8.3.2011 $ rpm -q libpq libpq-13.3-1.el8_4.x86_64 $ rpm -ql libpq | grep so /usr/lib64/libpq.so.5/usr/lib64/libpq.so.5.13 This is how it should be, not /usr/pgsql-13 This is custom installation of libpq and mess is caused by that. Not a Zabbix bug. For the record, PostgreSQL 13 is available for CentOS 8, what's the reason of compiling your own? |
Comment by Aigars Kadikis [ 2021 Oct 25 ] |
It is not a compiled version but the official build from postgresql.org. One reason for using this is if one day a client wants an official support from PostgreSQL, they will not support the version from the stock OS repo. I would call this installation as a second most popular when we are not using the version which arrived with the Linux distribution, but we choose to use directly vendor provided version. The DB installation is official from the vendor by using instruction at: https://www.postgresql.org/download/linux/redhat/ . |
Comment by dimir [ 2021 Oct 25 ] |
First, you must realize what you are reporting is a compilation issue, I really hope you understand that. Zabbix is so kind to provide to the users of most popular distros a pre-compiled binaries (in form of packages) which were built exactly on the OS, with all its environment, the packages are provided for. This takes care of the libraries compatibility and you install the package cleanly and it works without an issue. What you are reporting here: you get the OS that Zabbix packaging supports, remove the original library (and even disable it in dnf, you know why? Because they conflict) that was tested and confirmed by distro vendor and which Zabbix was compiled against, install another version of the library to the non-standard path and then complain that Zabbix that was built with X version of library does not work with Y, moreover, the Y is not even provided by the distro. Conclusion: I doubt Zabbix will have another set of each pgsql package for some vendor-specific version of the library at this point. So you either install postgresql from the distro repository or you re-compile Zabbix against the vendor-specific version on your own. You can't take zabbix-proxy-pgsql that says basically "Zabbix compiled against library from the distro" with something that is not part of the distro postgresql13-server and then complain that the latter doesn't work. It's wrong. Zabbix works with PostgreSQL. It works with what it was meant (built) to work with. |
Comment by Edgar Akhmetshin [ 2021 Oct 25 ] |
RHEL8 from module/stream collection: ===================================================================================================================================================================================================== Package Architecture Version Repository Size ===================================================================================================================================================================================================== Installing: postgresql x86_64 13.3-1.module+el8.4.0+20192+096f5771 ol8_appstream 1.5 M Installing dependencies: libpq x86_64 13.3-1.el8_4 ol8_appstream 197 k Transaction Summary ===================================================================================================================================================================================================== Install 2 Packages bash-4.4# rpm -ql libpq | grep so /usr/lib64/libpq.so.5 /usr/lib64/libpq.so.5.13 For official packages from PostgreSQL itself paths are different, because 'no libpq' package, but: bash-4.4# find / -iname "*libpq*" ... /usr/pgsql-13/lib/libpqwalreceiver.so /usr/pgsql-13/lib/libpq.so.5.13 /usr/pgsql-13/lib/libpq.so.5 PgSQL provides separate libpq(5) package: dnf -y install libpq It will take it from official pgdg-common repo. Compatibility is promised by DEV's: https://www.postgresql.org/message-id/113082781.20131001152820%40gf.microolap.com Dependencies resolved. ===================================================================================================================================================================================================== Package Architecture Version Repository Size ===================================================================================================================================================================================================== Installing: libpq5 x86_64 14.0-42PGDG.rhel8 pgdg-common 199 k Transaction Summary bash-4.4# rpm -ql libpq5 | grep so; /usr/lib64/libpq.so /usr/lib64/libpq.so.5 /usr/lib64/libpq.so.5.14 Should be documented - libpg should be installed separately if official PgSQL repo is used. Or packages should be recompiled. To use specific paths. |
Comment by Timo Veith [ 2022 Mar 16 ] |
Hello, I guess I have the same problem but with the zabbix server. On a test installation with zabbix 6.0 on rhel8 I am getting this in the log: Feb 24 05:35:27 zbx60 zabbix_server[24598]: /usr/sbin/zabbix_server: /usr/pgsql-14/lib/libpq.so.5: no version information available (required by /usr/sbin/zabbix_server) I am using PostgreSQL 14 from the official PostgreSQL repo because the timescaledb installation documentation requires one to disable the rhel module of postgresql and using the offical postgresql repo. Also the zabbix install documentation points to the timescale webpage for installation instructions. How serious is that message? Is it an error or only a warning? Still the zabbix_server is starting, running and able to query the db. If it is a serious error do I have to switch to the rhel module of postgresql? That would be a downgrade to postgresql version 13, because Red Hat doesn't have 14 with rhel8 yet. Also how does timescaledb then match into this? Do I have to compile zabbix_server from source to solve this? Why did this not occure with Zabbix 5.0 when using PostgreSQL from the official PostgreSQL repo? Thank you and cheers Timo |
Comment by Jurijs Klopovskis [ 2022 Jul 14 ] |
Updated build environments for rhel 8 & 9 to build against upstream postgresql 14 libraries. This seems to fix the issue. Tested backwards compatibility with other versions of postgres, including packages in official rhel repos. Tested on rhel developer edition, centos stream, alma, rocky, and oracle linux. Found no problems. Expect the issue to be gone in new releases:
Haven't updated build environment for rhel-7, due to a lot of dependency issues with postgresql 14 there. |