Hi Graham,
Thanks for the reply. I tried different options as mentioned in the reply. Tried different versions of Python and http, but no luck.
Actually, I compiled, httpd and python source code and installed the python package mod_wsgi.
Below are the detailed steps I did;
In a fresh VM: Oracle Linux 7.8
1. yum upgrade
yum update
yun install openssl-devel
yun install libffi-devel
2. Compiled the following latest packages with prefix as --prefix=/path/to/apache/home
pcre2-10.35
expat-2.2.10
apr-1.6.5
apr-util-1.6.1
httpd-4.4.46 : compiled with --enable-ssl --enable-so
3. Compiled python-3.9.0 with prefix as --prefix=/path/to/python/install/home
4. Install python packages: all latest versions:
python3 -m pip install grpcio grpcio-tools protobuf mod-wsgi DJango
4. Configured /path/to/apache/home/conf/httpd.conf as below
Listen 9000
User my_username
Group my_group
ServerName localhost:9000
<Directory "/">
Require all granted
</Directory>
WSGIPythonHome /path/to/python/install/home
LoadModule wsgi_module /path/to/python/install/home/lib/python3.9/site-packages/mod_wsgi/server/mod_wsgi-py39-cpython-39-x86_64-linux-gnu.so
Started the apache as /path/to/apache/home/bin/apachectl start
Below are the logs obtained.
If I understood correctly from last reply, the python subinterpreter is loaded instead of primary interpreter when a GRPC api is invoked, causing the deadlock.
Please let me know how to get rid of this deadlock issue with grpc client in mod_wsgi.
Thanks and Regards,
Manosh Padannayil