Re: [SOLVED] Re: Cannot Run pgAdmin4 v8.13 on AlmaLinux 8 after upgrade from v8.12

From: Khushboo Vashi <khushboo(dot)vashi(at)enterprisedb(dot)com>
To: Surya Widyanto <ayrus02(at)gmail(dot)com>
Cc: pgAdmin Support <pgadmin-support(at)postgresql(dot)org>
Subject: Re: [SOLVED] Re: Cannot Run pgAdmin4 v8.13 on AlmaLinux 8 after upgrade from v8.12
Date: 2024-12-16 08:52:02
Message-ID: CAFOhELd77NkETYtzDONZ+YDAK9e93fTKea8ECV0R0qpMo0i-_g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-support

On Fri, Dec 13, 2024 at 6:20 PM Surya Widyanto <ayrus02(at)gmail(dot)com> wrote:

> Hi,
>
> I just want to share that the problem with my installation of pgAdmin4 on
> my AlmaLinux v8.x and v9.x are now can run with Web mode using Apache HTTPD.
> I will try to explain how I overcome the problem
>
> 1. First, the error log of my pgAdmin4 are like below
>
> mod_wsgi (pid=3540264): Failed to exec Python script file
> '/usr/pgadmin4/web/pgAdmin4.wsgi'.
> mod_wsgi (pid=3540264): Exception occurred processing WSGI script
> '/usr/pgadmin4/web/pgAdmin4.wsgi'.
> Traceback (most recent call last):
> File "/usr/pgadmin4/web/pgAdmin4.wsgi", line 36, in <module>
> from pgAdmin4 import app as application
> File "/usr/pgadmin4/web/pgAdmin4.py", line 93, in <module>
> app = create_app()
> File "/usr/pgadmin4/web/pgadmin/__init__.py", line 546, in create_app
> driver.init_app(app)
> File "/usr/pgadmin4/web/pgadmin/utils/driver/__init__.py", line 27, in
> init_app
> DriverRegistry.load_modules(app)
> File "/usr/pgadmin4/web/pgadmin/utils/driver/registry.py", line 20, in
> load_modules
> from . import psycopg3 as module
> File "/usr/pgadmin4/web/pgadmin/utils/driver/psycopg3/__init__.py", line
> 21, in <module>
> import psycopg
> File
> "/usr/pgadmin4/venv/lib64/python3.9/site-packages/psycopg/__init__.py",
> line 9, in <module>
> from . import pq # noqa: F401 import early to stabilize side effects
> File
> "/usr/pgadmin4/venv/lib64/python3.9/site-packages/psycopg/pq/__init__.py",
> line 117, in <module>
> import_from_libpq()
> File
> "/usr/pgadmin4/venv/lib64/python3.9/site-packages/psycopg/pq/__init__.py",
> line 109, in import_from_libpq
> raise ImportError(
> ImportError: no pq wrapper available.
> Attempts made:
> - couldn't import psycopg 'c' implementation:
> /usr/pgadmin4/venv/lib64/python3.9/site-packages/psycopg_c/
> pq.cpython-39-x86_64-linux-gnu.so: undefined symbol: PQchangePassword
> - couldn't import psycopg 'binary' implementation: No module named
> 'psycopg_binary'
> - couldn't import psycopg 'python' implementation:
>
> 2. From the log I know that after upgrading from pgAdmin4 v8.12 to v8.13
> and above, it require some *psycopg_binary *python package
>
> 3. So I open the pgAdmin4 virtual environment using command:
>
> source /usr/pgadmin4/venv/bin/activate
>
> 4. Then run PIP to install the required package *psycopg_binaryby *running
> command:
>
>
> *pip install "psycopg[binary]"*
>
*psycpg[binary]* installs all the libraries needed. So it will not use your
system's libpq.

> 5. And restart the *Apache HTTPD*, and access it from web browser.
> That's it, I can access my instance of pgAdmin4 v8.13 or the latest v8.14
> from web.
>
> Regards,
> ayrus02
>
>
> On 03-12-2024 12:33, Khushboo Vashi wrote:
>
>
>
> On Mon, Dec 2, 2024 at 6:31 PM Surya Widyanto <ayrus02(at)gmail(dot)com> wrote:
>
>> Hi,
>>
>> For this problem is it already identified the main problem? is it a bug
>> on the new release v8.13?
>> Is there any hint how to solve the problem? until now, I still cannot
>> upgrade to v8.13 because of this problem
>>
>> Please try moving libpq.so and libpq.so.5 to the other location and
> keeping only one libpq `/usr/lib64/libpq.so.5.17`.
>
> Regards,
>> ayrus02
>>
>> On 18-11-2024 16:42, Khushboo Vashi wrote:
>>
>> Hi,
>>
>> Make sure that your libpq is located at LIBDIR = /usr/lib64. This error
>> may occur when you have multiple libpq installed on your system. Also do
>> not forget to restart the apache server.
>>
>> Thanks,
>> Khushboo
>>
>>
>>
>> On Mon, Nov 18, 2024 at 3:06 PM Surya Widyanto <ayrus02(at)gmail(dot)com> wrote:
>>
>>> Hi,
>>>
>>> Below are the output of pg_config on on my AlmaLinux 8 (x64) machine:
>>>
>>> BINDIR = /usr/bin
>>> DOCDIR = /usr/share/doc/pgsql
>>> HTMLDIR = /usr/share/doc/pgsql
>>> INCLUDEDIR = /usr/include
>>> PKGINCLUDEDIR = /usr/include/pgsql
>>> INCLUDEDIR-SERVER = /usr/include/pgsql/server
>>> LIBDIR = /usr/lib64
>>> PKGLIBDIR = /usr/lib64/pgsql
>>> LOCALEDIR = /usr/share/locale
>>> MANDIR = /usr/share/man
>>> SHAREDIR = /usr/share/pgsql
>>> SYSCONFDIR = /etc/pgsql
>>> PGXS = /usr/lib64/pgsql/pgxs/src/makefiles/pgxs.mk
>>> CONFIGURE = '--build=x86_64-redhat-linux-gnu'
>>> '--host=x86_64-redhat-linux-gnu' '--program-prefix='
>>> '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr'
>>> '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc'
>>> '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64'
>>> '--libexecdir=/usr/libexec' '--localstatedir=/var'
>>> '--sharedstatedir=/var/lib' '--mandir=/usr/share/man'
>>> '--infodir=/usr/share/info' '--disable-rpath' '--with-openssl'
>>> '--with-gssapi' '--with-includes=/usr/include'
>>> '--with-libraries=/usr/lib64' '--enable-nls' '--with-ldap' '--with-lz4'
>>> '--with-selinux' '--with-systemd'
>>> '--with-system-tzdata=/usr/share/zoneinfo'
>>> 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu'
>>> 'CFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
>>> -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong
>>> -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
>>> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
>>> -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
>>> 'LDFLAGS=-Wl,--as-needed' 'CXXFLAGS=-O2 -g -pipe -Wall
>>> -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
>>> -fexceptions -fstack-protector-strong -grecord-gcc-switches
>>> -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
>>> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
>>> -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
>>> 'PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig'
>>> 'PYTHON=/usr/bin/python3'
>>> CC = gcc
>>> CPPFLAGS = -D_GNU_SOURCE -I/usr/include
>>> CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith
>>> -Wdeclaration-after-statement -Werror=vla -Wendif-labels
>>> -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type
>>> -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv
>>> -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation
>>> -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
>>> -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong
>>> -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
>>> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
>>> -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
>>> CFLAGS_SL = -fPIC
>>> LDFLAGS = -Wl,--as-needed -L/usr/lib64 -Wl,--as-needed
>>> LDFLAGS_EX =
>>> LDFLAGS_SL =
>>> LIBS = -lpgcommon -lpgport -lselinux -llz4 -lssl -lcrypto -lgssapi_krb5
>>> -lz -lreadline -lpthread -lrt -ldl -lm
>>> VERSION = PostgreSQL 17.0
>>>
>>> Below are the output of pg_config on on my AlmaLinux 9 (x64) machine:
>>>
>>> BINDIR = /usr/bin
>>> DOCDIR = /usr/share/doc/pgsql
>>> HTMLDIR = /usr/share/doc/pgsql
>>> INCLUDEDIR = /usr/include
>>> PKGINCLUDEDIR = /usr/include/pgsql
>>> INCLUDEDIR-SERVER = /usr/include/pgsql/server
>>> LIBDIR = /usr/lib64
>>> PKGLIBDIR = /usr/lib64/pgsql
>>> LOCALEDIR = /usr/share/locale
>>> MANDIR = /usr/share/man
>>> SHAREDIR = /usr/share/pgsql
>>> SYSCONFDIR = /etc/pgsql
>>> PGXS = /usr/lib64/pgsql/pgxs/src/makefiles/pgxs.mk
>>> CONFIGURE = '--build=x86_64-redhat-linux-gnu'
>>> '--host=x86_64-redhat-linux-gnu' '--program-prefix='
>>> '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr'
>>> '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc'
>>> '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64'
>>> '--libexecdir=/usr/libexec' '--localstatedir=/var'
>>> '--sharedstatedir=/var/lib' '--mandir=/usr/share/man'
>>> '--infodir=/usr/share/info' '--disable-rpath' '--with-openssl'
>>> '--with-gssapi' '--with-includes=/usr/include'
>>> '--with-libraries=/usr/lib64' '--enable-nls' '--with-ldap' '--with-lz4'
>>> '--with-selinux' '--with-systemd'
>>> '--with-system-tzdata=/usr/share/zoneinfo'
>>> 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu'
>>> 'CC=gcc' 'CFLAGS=-O2 -flto=auto -ffat-lto-objects -fexceptions -g
>>> -grecord-gcc-switches -pipe -Wall -Werror=format-security
>>> -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
>>> -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
>>> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64-v2
>>> -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection
>>> -fcf-protection' 'LDFLAGS=-Wl,--as-needed' 'CXX=g++' 'CXXFLAGS=-O2
>>> -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe
>>> -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
>>> -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
>>> -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1
>>> -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables
>>> -fstack-clash-protection -fcf-protection'
>>> 'PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig'
>>> 'PYTHON=/usr/bin/python3'
>>> CC = gcc
>>> CPPFLAGS = -D_GNU_SOURCE -I/usr/include
>>> CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith
>>> -Wdeclaration-after-statement -Werror=vla -Wendif-labels
>>> -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type
>>> -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv
>>> -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation
>>> -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches
>>> -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
>>> -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
>>> -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64
>>> -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables
>>> -fstack-clash-protection -fcf-protection
>>> CFLAGS_SL = -fPIC
>>> LDFLAGS = -Wl,--as-needed -L/usr/lib64 -Wl,--as-needed
>>> LDFLAGS_EX =
>>> LDFLAGS_SL =
>>> LIBS = -lpgcommon -lpgport -lselinux -llz4 -lssl -lcrypto -lgssapi_krb5
>>> -lz -lreadline -lm
>>> VERSION = PostgreSQL 17.0
>>>
>>> Regards,
>>> ayrus02
>>>
>>>
>>> On 18-11-2024 16:26, Khushboo Vashi wrote:
>>>
>>>
>>>
>>> On Mon, Nov 18, 2024 at 2:48 PM Surya Widyanto <ayrus02(at)gmail(dot)com>
>>> wrote:
>>>
>>>> Hi,
>>>>
>>>> Below are the output of *dnf list libpq5** on my AlmaLinux 8 (x64)
>>>> machine:
>>>>
>>>> Last metadata expiration check: 3:28:40 ago on Mon 18 Nov 2024 12:43:19
>>>> PM WIB.
>>>> Installed Packages
>>>> libpq5.x86_64 - 17.0-43PGDG.rhel8 - @pgAdmin4
>>>> Available Packages
>>>> libpq5-devel.x86_64 - 17.0-43PGDG.rhel8 - pgAdmin4
>>>> libpq5-devel.x86_64 - 17.0-43PGDG.rhel8 - pgdg-common
>>>>
>>>> This looks fine.
>>> What's the output of pg_config ?
>>>
>>>> And below are the output of *dnf list libpq5** on my AlmaLinux 9 (x64)
>>>> machine:
>>>>
>>>> Last metadata expiration check: 0:38:20 ago on Sen 18 Nov 2024 03:33:43
>>>> .
>>>> Installed Packages
>>>> libpq5.x86_64 - 17.0-43PGDG.rhel9 - @pgdg-common
>>>> Available Packages
>>>> libpq5-devel.x86_64 - 17.0-43PGDG.rhel9 - pgAdmin4
>>>> libpq5-devel.x86_64 - 17.0-43PGDG.rhel9 - pgdg-common
>>>>
>>>> Regards,
>>>> ayrus02
>>>> On 18-11-2024 16:06, Khushboo Vashi wrote:
>>>>
>>>>
>>>>
>>>> On Mon, Nov 18, 2024 at 1:13 PM Surya Widyanto <ayrus02(at)gmail(dot)com>
>>>> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I've upgraded the libpq5 to version 17.0-43PGDG.rhel8
>>>>> I've also restart the apache server.
>>>>>
>>>>
>>>> What's the output of `yum list libpq5*` ?
>>>>
>>>>>
>>>>> But the problem still exist. With the same error in log file.
>>>>>
>>>>> I've also can confirm that this also happened on my other server
>>>>> running AlmaLinux 9 (x64).
>>>>> My other server also has libpq5 with version 17.0-43PGDG.rhel9 and
>>>>> also running as Web Mode via Apache.
>>>>>
>>>>> Regards,
>>>>> ayrus02
>>>>>
>>>>> On 18-11-2024 14:21, Khushboo Vashi wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> On Mon, Nov 18, 2024 at 12:24 PM Surya Widyanto <ayrus02(at)gmail(dot)com>
>>>>> wrote:
>>>>>
>>>>>> Hi Vashi,
>>>>>>
>>>>>> Yes, I can confirm it is installed with version:
>>>>>> libpq5.x86_64 - v16.3-43PGDG.rhel8
>>>>>>
>>>>>
>>>>> During the pgAdmin upgrade on your system, the libpq5 should have been
>>>>> upgraded to the latest (v17), which didn't happen in your case.
>>>>> Can you please upgrade libpq5 to the latest version? It should fix
>>>>> this issue.
>>>>>
>>>>> Thanks,
>>>>> Khushboo
>>>>>
>>>>>>
>>>>>> Regards,
>>>>>> ayrus02
>>>>>>
>>>>>> On 18-11-2024 13:48, Khushboo Vashi wrote:
>>>>>>
>>>>>> Is libpq5 installed on your system?
>>>>>>
>>>>>> On Mon, Nov 18, 2024 at 12:11 PM Surya Widyanto <ayrus02(at)gmail(dot)com>
>>>>>> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> Today, I've upgraded my pgAdmin4 version from v8.12 to v8.13 using
>>>>>>> dnf on AlmaLinux 8.
>>>>>>>
>>>>>>> My pgAdmin4 is installed as web mode and accessed via Apache.
>>>>>>>
>>>>>>> After upgrading to v8.13, when I access the pgAdmin4 address from
>>>>>>> web browser, it give an error 500. When I look at the error log, it
>>>>>>> contains the line below:
>>>>>>>
>>>>>>> mod_wsgi (pid=3535715): Failed to exec Python script file
>>>>>>> '/usr/pgadmin4/web/pgAdmin4.wsgi'.
>>>>>>> mod_wsgi (pid=3535715): Exception occurred processing WSGI script
>>>>>>> '/usr/pgadmin4/web/pgAdmin4.wsgi'.
>>>>>>> Traceback (most recent call last):
>>>>>>> ImportError: no pq wrapper available.
>>>>>>> Attempts made:
>>>>>>> - couldn't import psycopg 'c' implementation:
>>>>>>> /usr/pgadmin4/venv/lib64/python3.9/site-packages/psycopg_c/
>>>>>>> pq.cpython-39-x86_64-linux-gnu.so: undefined symbol:
>>>>>>> PQchangePassword
>>>>>>> - couldn't import psycopg 'binary' implementation: No module named
>>>>>>> 'psycopg_binary'
>>>>>>> - couldn't import psycopg 'python' implementation:
>>>>>>>
>>>>>>> The primary concern is at *undefined symbol: PQchangePassword*
>>>>>>>
>>>>>>> Is there any bug or I have do the update wrongly?
>>>>>>>
>>>>>>> Regards,
>>>>>>> ayrus02
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>

In response to

Browse pgadmin-support by date

  From Date Subject
Next Message Aditya Toshniwal 2024-12-16 09:18:33 Re: cancel running query
Previous Message Yogesh Mahajan 2024-12-16 05:21:10 Re: Logging in error