Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OSError: AF_UNIX path too long #118

Open
Roman-Churakov opened this issue Nov 23, 2023 · 2 comments
Open

OSError: AF_UNIX path too long #118

Roman-Churakov opened this issue Nov 23, 2023 · 2 comments
Labels

Comments

@Roman-Churakov
Copy link

Describe the bug
Since the release of behaveX 3.2.0 some of our builds have started to fail with 'AF_UNIX path too long' error.
(By saying 'some builds', I mean that we noticed that for the same repo a build for master is still OK, but a build for a branch has started to fail, even though is was OK yesterday.)
By pinning behaveX version to 3.0.0 we have achieved that our build is successful in all repos and branches.

To Reproduce
Steps to reproduce the behavior:
15:32:24 + python3 -m behavex --parallel-processes 8 --parallel-scheme scenario --logging-level ERROR '--tags=~Isolated'
15:32:25 |--------------------| ------------------------------------------------------------|
15:32:25 |ENV. VARIABLE | VALUE |
15:32:25 |--------------------| ------------------------------------------------------------|
15:32:25 |HOME | /home/ec2-user |
15:32:25 |CONFIG | /home/ec2-user/.local/lib/python3.8/site-packages/behavex/conf_behavex.cfg|
15:32:25 |OUTPUT | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/output|
15:32:25 |TAGS | ~Isolated |
15:32:25 |PARALLEL_SCHEME | scenario |
15:32:25 |PARALLEL_PROCESSES | 8 |
15:32:25 |FEATURES_PATH | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/features|
15:32:25 |TEMP | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/output/temp|
15:32:25 |LOGS | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/output/outputs/logs|
15:32:25 |LOGGING_LEVEL | ERROR |
15:32:25 |--------------------| ------------------------------------------------------------|
15:32:25 Process SyncManager-1:
15:32:25 Traceback (most recent call last):
15:32:25 File "/usr/lib64/python3.8/multiprocessing/process.py", line 315, in _bootstrap
15:32:25 self.run()
15:32:25 File "/usr/lib64/python3.8/multiprocessing/process.py", line 108, in run
15:32:25 self._target(*self._args, **self._kwargs)
15:32:25 File "/usr/lib64/python3.8/multiprocessing/managers.py", line 608, in _run_server
15:32:25 server = cls._Server(registry, address, authkey, serializer)
15:32:25 File "/usr/lib64/python3.8/multiprocessing/managers.py", line 154, in init
15:32:25 self.listener = Listener(address=address, backlog=16)
15:32:25 File "/usr/lib64/python3.8/multiprocessing/connection.py", line 448, in init
15:32:25 self._listener = SocketListener(address, family, backlog)
15:32:25 File "/usr/lib64/python3.8/multiprocessing/connection.py", line 591, in init
15:32:25 self._socket.bind(address)
15:32:25 OSError: AF_UNIX path too long

Expected behavior
(captured after pinning behaveX to 3.0.0)
16:04:03 + python3 -m behavex --parallel-processes 8 --parallel-scheme scenario --logging-level ERROR '--tags=~Isolated'
16:04:03 |--------------------| ------------------------------------------------------------|
16:04:03 |ENV. VARIABLE | VALUE |
16:04:03 |--------------------| ------------------------------------------------------------|
16:04:03 |HOME | /home/ec2-user |
16:04:03 |CONFIG | /home/ec2-user/.local/lib/python3.8/site-packages/behavex/conf_behavex.cfg|
16:04:03 |OUTPUT | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/output|
16:04:03 |TAGS | ~Isolated |
16:04:03 |PARALLEL_SCHEME | scenario |
16:04:03 |PARALLEL_PROCESSES | 8 |
16:04:03 |FEATURES_PATH | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/features|
16:04:03 |TEMP | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/output/temp|
16:04:03 |LOGS | /mnt/jenkins/workspace/orders_SP-896-Add-Non-Sales-Type/src/test/output/outputs/logs|
16:04:03 |LOGGING_LEVEL | ERROR |
16:04:03 |--------------------| ------------------------------------------------------------|
16:04:27 HTTP API_ID: ************
16:04:27 HTTP URL: https://**************************
16:04:27 HTTP Status: 200
16:04:27 HTTP Body: "{ "status": "success", "data": null }"
16:04:27 HTTP API_ID: *********
16:04:27 HTTP URL: https://******************************
16:04:27 HTTP PARAM: "2023-11-23 15:04:06:*********"
16:04:27 HTTP Status: 200
16:04:27 HTTP Body: "{ "status": "success", "data": { ******
AND SO ON

Running on
Aws Linux image packed by hashicorp.com (latest)
installed: git, gcc, java-1.8.0-openjdk, mysql, mysql-connector-java, mysqldef_linux_amd64.tar.gz, xorg-x11-server-Xvfb, jfrog.io, Node.sh

@hrcorval
Copy link
Owner

Hi @Roman-Churakov, maybe the issue is related to a small change in the way we are using the multiprocessing library to start implementing a lock in a shared area.
We will analyze this. In the meantime, I have seen a workaround can be to export the environment variable $TMPDIR to a shorter path.
Regards,

@manrodrigues
Copy link

@Roman-Churakov this was a worthwhile workaround for us:

TMPDIR=/tmp/ behavex -t=@tag --parallel-processes=10 --parallel-scheme=scenario

(instead of the usual behavex -t=@tag --parallel-processes=10 --parallel-scheme=scenario)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants