forked from goodboy/tractor
Don't mix trip with multiprocessing for now
It seems that mixing the two backends in the test suite results in hangs due to lingering forkservers and resource managers from `multiprocessing`? Likely we'll need either 2 separate CI runs to work or someway to be sure that these lingering servers are killed in between tests.try_trip^2
parent
bc259b7eab
commit
783fe53b06
|
@ -38,7 +38,7 @@ def pytest_generate_tests(metafunc):
|
||||||
methods = get_all_start_methods()
|
methods = get_all_start_methods()
|
||||||
|
|
||||||
if platform.system() != "Windows":
|
if platform.system() != "Windows":
|
||||||
methods += ['trio_run_in_process']
|
methods = ['trio_run_in_process']
|
||||||
|
|
||||||
if 'fork' in methods: # fork not available on windows, so check before removing
|
if 'fork' in methods: # fork not available on windows, so check before removing
|
||||||
# XXX: the fork method is in general incompatible with
|
# XXX: the fork method is in general incompatible with
|
||||||
|
|
|
@ -284,16 +284,21 @@ async def spawn_and_error(breadth, depth) -> None:
|
||||||
|
|
||||||
|
|
||||||
@tractor_test
|
@tractor_test
|
||||||
async def test_nested_multierrors(loglevel, start_method):
|
async def test_nested_multierrors(loglevel):
|
||||||
"""Test that failed actor sets are wrapped in `trio.MultiError`s.
|
"""Test that failed actor sets are wrapped in `trio.MultiError`s.
|
||||||
This test goes only 2 nurseries deep but we should eventually have tests
|
This test goes only 2 nurseries deep but we should eventually have tests
|
||||||
for arbitrary n-depth actor trees.
|
for arbitrary n-depth actor trees.
|
||||||
"""
|
"""
|
||||||
# XXX: forkserver can't seem to handle any more then 2 depth
|
# if start_method == 'trio_run_in_process':
|
||||||
# process trees for whatever reason.
|
depth = 2
|
||||||
# Any more process levels then this and we start getting pretty slow anyway
|
subactor_breadth = 3
|
||||||
depth = 3
|
# else:
|
||||||
subactor_breadth = 2
|
# # XXX: multiprocessing can't seem to handle any more then 2 depth
|
||||||
|
# # process trees for whatever reason.
|
||||||
|
# # Any more process levels then this and we see bugs that cause
|
||||||
|
# # hangs and broken pipes all over the place...
|
||||||
|
# depth = 1
|
||||||
|
# subactor_breadth = 2
|
||||||
|
|
||||||
with trio.fail_after(120):
|
with trio.fail_after(120):
|
||||||
try:
|
try:
|
||||||
|
|
Loading…
Reference in New Issue