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

From: Surya Widyanto <ayrus02(at)gmail(dot)com>
To: Khushboo Vashi <khushboo(dot)vashi(at)enterprisedb(dot)com>
Cc: pgAdmin Support <pgadmin-support(at)postgresql(dot)org>
Subject: [SOLVED] Re: Cannot Run pgAdmin4 v8.13 on AlmaLinux 8 after upgrade from v8.12
Date: 2024-12-13 12:49:00
Message-ID: 7a7155e5-4e46-4030-b0c2-83036b4d447f@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-support

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]"
*

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
>> <http://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
>> <http://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
>>>>>> <http://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

Responses

Browse pgadmin-support by date

  From Date Subject
Next Message Markus KARG 2024-12-13 15:31:00 Re: Fwd: pgadmin says "SSL error: tlsv1 alert no application protocol"
Previous Message Markus KARG 2024-12-12 21:18:51 Fwd: pgadmin says "SSL error: tlsv1 alert no application protocol"