Skip to content

Commit 09857ac

Browse files
committed
Skipping multiprocessing tests with PyPY Python due to unstable behavior - sometimes processes hang and cause action timeouts. Enabling all long running pipeline jobs to be started after the initial fast checks.
1 parent 930d32b commit 09857ac

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

.github/workflows/integration.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ jobs:
9494

9595
python-compatibility-tests:
9696
runs-on: ubuntu-latest
97-
needs: [ redis_version, tests ]
97+
needs: [ redis_version ]
9898
timeout-minutes: 60
9999
strategy:
100100
max-parallel: 15
@@ -118,7 +118,7 @@ jobs:
118118

119119
hiredis-tests:
120120
runs-on: ubuntu-latest
121-
needs: [redis_version, tests]
121+
needs: [redis_version]
122122
timeout-minutes: 60
123123
strategy:
124124
max-parallel: 15
@@ -144,7 +144,7 @@ jobs:
144144

145145
uvloop-tests:
146146
runs-on: ubuntu-latest
147-
needs: [redis_version, tests]
147+
needs: [redis_version]
148148
timeout-minutes: 60
149149
strategy:
150150
max-parallel: 15
@@ -170,7 +170,7 @@ jobs:
170170
build-and-test-package:
171171
name: Validate building and installing the package
172172
runs-on: ubuntu-latest
173-
needs: [tests]
173+
needs: [redis_version]
174174
strategy:
175175
fail-fast: false
176176
matrix:

tests/test_multiprocessing.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import contextlib
22
import multiprocessing
3+
import platform
34

45
import pytest
56
import redis
@@ -17,6 +18,13 @@ def exit_callback(callback, *args):
1718
callback(*args)
1819

1920

21+
@pytest.mark.skipif(
22+
platform.python_implementation() == "PyPy",
23+
reason=(
24+
"Pypy has issues with multiprocessing using fork as start method. "
25+
"Causes processes to hang quite often"
26+
),
27+
)
2028
class TestMultiprocessing:
2129
# On macOS and newly non-macOS POSIX systems (since Python 3.14),
2230
# the default method has been changed to forkserver.

0 commit comments

Comments
 (0)