run on docker with rhel 8 on openshift without root user
this is the information about the OS that the docker is running
NAME="Red Hat Enterprise Linux"
VERSION="8.8 (Ootpa)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="8.8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Red Hat Enterprise Linux 8.8 (Ootpa)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:redhat:enterprise_linux:8::baseos"
HOME_URL="https://www.redhat.com/"
DOCUMENTATION_URL="https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 8"
REDHAT_BUGZILLA_PRODUCT_VERSION=8.8
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="8.8"
This is the requerment.txt file
python 3.10.11
asteroid==2.15.5
async-timeout==4.0.3
attrs==23.1.0
certify==2023.7.22
charset-normalizer==3.2.0
contourpy==1.1.0
coverage==7.2.7
cycler==0.11.0
debugpy==1.6.7
dill==0.3.6
exceptiongroup==1.1.1
execnet==1.9.0
fonttools==4.42.1
idna==3.4
iniconfig==2.0.0
isort==5.12.0
Jinja2==3.1.2
joblib==1.3.2
jsonschema==4.17.3
kiwisolver==1.4.5
lazy-object-proxy==1.9.0
MarkupSafe==2.1.3
matplotlib==3.7.2
mccabe==0.7.0
mlxtend==0.22.0
numpy==1.25.2
packaging==23.1
pandarallel==1.6.5
pandas==2.0.0
pika==1.3.1
Pillow==10.0.0
platformdirs==3.5.3
pluggy==1.0.0
psutil==5.9.5
py==1.11.0
py-cpuinfo==9.0.0
pylint==2.17.2
pyparsing==3.0.9
pyrsistent==0.19.3
pytest==7.3.1
pytest-benchmark==4.0.0
pytest-cov==4.0.0
pytest-html==3.2.0
pytest-metadata==3.0.0
pytest-mock==3.10.0
pytest-order==1.1.0
pytest-ordering==0.6
pytest-timeout==2.1.0
pytest-xdist==3.2.1
python-dateutil==2.8.2
pytz==2023.3
redis==4.5.4
requests==2.31.0
scikit-learn==1.2.2
scipy==1.10.1
seaborn==0.12.2
six==1.16.0
threadpoolctl==3.2.0
tomli==2.0.1
tomlkit==0.11.8
typing_extensions==4.6.3
tzdata==2023.3
urllib3==2.0.4
wrapt==1.15.0
OpenSSL 1.1.1k FIPS 25 Mar 2021
I give an example of usage of the lib
my usage is different but this code provides the same issue that i handle with
Try to Run:
import pandas as pd
from pandarallel import pandarallel
# Initialize pandarallel
pandarallel.initialize(use_memory_fs=False)
# Create a sample DataFrame
data = {'A': range(1, 11), 'B': range(11, 21)}
df = pd.DataFrame(data)
# Define a function that will be applied to each row in the DataFrame
def custom_function(row):
return row['A'] + row['B']
# Use pandarallel to apply the function in parallel
result = df.parallel_apply(custom_function, axis=1)
print(result)
this issue seems like there is an issue with multiprocessing
Result:
INFO: Pandarallel will run on 2 workers.
INFO: Pandarallel will use standard multiprocessing data transfer (pipe) to transfer data between the main process and workers.
Traceback (most recent call last):
File "/usr/app/x.py", line 17, in <module>
result = df.parallel_apply(custom_function, axis=1)
File "/usr/local/lib/python3.10/site-packages/pandarallel/core.py", line 368, in closure
master_workers_queue = manager.Queue()
File "/usr/local/lib/python3.10/multiprocessing/managers.py", line 723, in temp
token, exp = self._create(typeid, *args, **kwds)
File "/usr/local/lib/python3.10/multiprocessing/managers.py", line 606, in _create
conn = self._Client(self._address, authkey=self._authkey)
File "/usr/local/lib/python3.10/multiprocessing/connection.py", line 508, in Client
answer_challenge(c, authkey)
File "/usr/local/lib/python3.10/multiprocessing/connection.py", line 755, in answer_challenge
digest = hmac.new(authkey, message, 'md5').digest()
File "/usr/local/lib/python3.10/hmac.py", line 184, in new
return HMAC(key, msg, digestmod)
File "/usr/local/lib/python3.10/hmac.py", line 60, in __init__
self._init_hmac(key, msg, digestmod)
File "/usr/local/lib/python3.10/hmac.py", line 67, in _init_hmac
self._hmac = _hashopenssl.hmac_new(key, msg, digestmod=digestmod)
ValueError: no reason supplied
Thanks
Use Python 3.12. See Issue #61460.