From 7338996c0c60ffcb3206e0bf7753bf91384b842e Mon Sep 17 00:00:00 2001 From: crusaderky Date: Thu, 25 Feb 2021 10:59:51 +0000 Subject: [PATCH 1/9] Python 3.9 --- .github/workflows/tests-macos.yaml | 4 +- .github/workflows/tests.yaml | 2 +- continuous_integration/environment-3.8.yaml | 18 ++----- continuous_integration/environment-3.9.yaml | 52 +++++++++++++++++++++ distributed/cli/tests/test_dask_worker.py | 2 +- distributed/deploy/tests/test_ssh.py | 2 +- distributed/utils.py | 7 ++- setup.py | 1 + 8 files changed, 68 insertions(+), 20 deletions(-) create mode 100644 continuous_integration/environment-3.9.yaml diff --git a/.github/workflows/tests-macos.yaml b/.github/workflows/tests-macos.yaml index a89ce4e616e..4caa4e04f82 100644 --- a/.github/workflows/tests-macos.yaml +++ b/.github/workflows/tests-macos.yaml @@ -4,7 +4,7 @@ on: - push # MacOS tests are currently afflicted by a very high level of flakiness; do not run on # PR unless this line is uncommented. - # - pull_request + - pull_request jobs: test: @@ -14,7 +14,7 @@ jobs: fail-fast: false matrix: # Many deterministic test failures on Python 3.6 - python-version: ["3.7", "3.8"] + python-version: ["3.7", "3.8", "3.9"] # Uncomment to stress-test the test suite for random failures # This will take a LONG time and delay all PRs across the whole github.com/dask! diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index d189e291374..d123f3affe6 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -13,7 +13,7 @@ jobs: # Linux and Windows, run on merge to master and on all pull requests. # On MacOS, run only on merge to master (see twin workflow tests-macos.yaml). os: [ubuntu-latest, windows-latest] - python-version: ["3.6", "3.7", "3.8"] + python-version: ["3.6", "3.7", "3.8", "3.9"] # Uncomment to stress-test the test suite for random failures # This will take a LONG time and delay all PRs across the whole github.com/dask! diff --git a/continuous_integration/environment-3.8.yaml b/continuous_integration/environment-3.8.yaml index 153a47d8756..118d4231e4b 100644 --- a/continuous_integration/environment-3.8.yaml +++ b/continuous_integration/environment-3.8.yaml @@ -2,7 +2,6 @@ name: dask-distributed channels: - conda-forge - defaults - - pytorch dependencies: - python=3.8 - pip @@ -11,13 +10,12 @@ dependencies: - click - cloudpickle - dask # overridden by git tip below - - filesystem-spec # overridden by git tip below + - filesystem-spec - h5py - ipykernel - ipywidgets - - joblib # overridden by git tip below + - joblib - jupyter_client - - lz4 # Only tested here - msgpack-python - netcdf4 - paramiko @@ -29,24 +27,16 @@ dependencies: - pytest-repeat - pytest-rerunfailures - pytest-timeout - - python-blosc # Only tested here - - python-snappy # Only tested here - - pytorch # Only tested here - requests - - s3fs # overridden by git tip below + - s3fs - scikit-learn - scipy - sortedcollections - tblib - toolz - - torchvision # Only tested here - tornado=6 - - zict # overridden by git tip below + - zict - zstandard - pip: - git+https://github.com/dask/dask - - git+https://github.com/dask/s3fs - - git+https://github.com/dask/zict - - git+https://github.com/intake/filesystem_spec - - git+https://github.com/joblib/joblib - keras diff --git a/continuous_integration/environment-3.9.yaml b/continuous_integration/environment-3.9.yaml new file mode 100644 index 00000000000..fa0a661a96b --- /dev/null +++ b/continuous_integration/environment-3.9.yaml @@ -0,0 +1,52 @@ +name: dask-distributed +channels: + - conda-forge + - defaults + - pytorch +dependencies: + - python=3.9 + - pip + - asyncssh + - bokeh + - click + - cloudpickle + - dask # overridden by git tip below + - filesystem-spec # overridden by git tip below + - h5py + - ipykernel + - ipywidgets + - joblib # overridden by git tip below + - jupyter_client + - lz4 # Only tested here + - msgpack-python + - netcdf4 + - paramiko + - prometheus_client + - psutil + - pytest + - pytest-asyncio<0.14.0 + - pytest-faulthandler + - pytest-repeat + - pytest-rerunfailures + - pytest-timeout + - python-blosc # Only tested here + - python-snappy # Only tested here + - pytorch # Only tested here + - requests + - s3fs # overridden by git tip below + - scikit-learn + - scipy + - sortedcollections + - tblib + - toolz + - torchvision # Only tested here + - tornado=6 + - zict # overridden by git tip below + - zstandard + - pip: + - git+https://github.com/dask/dask + - git+https://github.com/dask/s3fs + - git+https://github.com/dask/zict + - git+https://github.com/intake/filesystem_spec + - git+https://github.com/joblib/joblib + - keras diff --git a/distributed/cli/tests/test_dask_worker.py b/distributed/cli/tests/test_dask_worker.py index f8bbeedfb97..853b9964128 100644 --- a/distributed/cli/tests/test_dask_worker.py +++ b/distributed/cli/tests/test_dask_worker.py @@ -41,7 +41,7 @@ def test_nanny_worker_ports(loop): if d["workers"]: break else: - assert time() - start < 5 + assert time() - start < 60 sleep(0.1) assert ( d["workers"]["tcp://127.0.0.1:9684"]["nanny"] diff --git a/distributed/deploy/tests/test_ssh.py b/distributed/deploy/tests/test_ssh.py index 376194549ce..0bea6f7dc75 100644 --- a/distributed/deploy/tests/test_ssh.py +++ b/distributed/deploy/tests/test_ssh.py @@ -81,7 +81,7 @@ def test_defer_to_old(loop): @pytest.mark.avoid_ci -def test_old_ssh_wih_local_dir(loop): +def test_old_ssh_with_local_dir(loop): with pytest.warns(Warning): from distributed.deploy.old_ssh import SSHCluster as OldSSHCluster diff --git a/distributed/utils.py b/distributed/utils.py index d7d4db6b2c5..ddd4d07c3f9 100644 --- a/distributed/utils.py +++ b/distributed/utils.py @@ -10,7 +10,6 @@ import html import json import logging -import multiprocessing import os import re import shutil @@ -71,6 +70,12 @@ def _initialize_mp_context(): + import multiprocessing # noqa: F401 + + if not WINDOWS: + # For some reason this is required in python >= 3.9 + import multiprocessing.popen_spawn_posix + if WINDOWS or PYPY: return multiprocessing else: diff --git a/setup.py b/setup.py index 9160e1ffdc9..5483e0b963d 100755 --- a/setup.py +++ b/setup.py @@ -92,6 +92,7 @@ "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", "Topic :: Scientific/Engineering", "Topic :: System :: Distributed Computing", ], From d112a747cfbf83f8d9786bf1585997ad9ac82431 Mon Sep 17 00:00:00 2001 From: crusaderky Date: Thu, 25 Feb 2021 12:21:34 +0000 Subject: [PATCH 2/9] skip tests on windows --- distributed/cli/tests/test_dask_worker.py | 2 ++ distributed/deploy/tests/test_local.py | 2 ++ distributed/tests/test_client_executor.py | 3 +++ 3 files changed, 7 insertions(+) diff --git a/distributed/cli/tests/test_dask_worker.py b/distributed/cli/tests/test_dask_worker.py index 853b9964128..d8a075c5dc2 100644 --- a/distributed/cli/tests/test_dask_worker.py +++ b/distributed/cli/tests/test_dask_worker.py @@ -12,6 +12,7 @@ import distributed.cli.dask_worker from distributed import Client, Scheduler +from distributed.compatibility import WINDOWS from distributed.deploy.utils import nprocesses_nthreads from distributed.metrics import time from distributed.utils import sync, tmpfile, parse_ports @@ -247,6 +248,7 @@ def test_nprocs_negative(loop): c.wait_for_workers(cpu_count(), timeout="10 seconds") +@pytest.mark.skipif(sys.version_info >= (3, 9) and WINDOWS, reason="#TODO") def test_nprocs_auto(loop): with popen(["dask-scheduler", "--no-dashboard"]) as sched: with popen(["dask-worker", "127.0.0.1:8786", "--nprocs=auto"]) as worker: diff --git a/distributed/deploy/tests/test_local.py b/distributed/deploy/tests/test_local.py index 5a35f36695c..2793f0f7987 100644 --- a/distributed/deploy/tests/test_local.py +++ b/distributed/deploy/tests/test_local.py @@ -16,6 +16,7 @@ from dask.system import CPU_COUNT from distributed import Client, Worker, Nanny, get_client +from distributed.compatibility import WINDOWS from distributed.core import Status from distributed.deploy.local import LocalCluster from distributed.metrics import time @@ -456,6 +457,7 @@ async def test_scale_up_and_down(): assert len(cluster.workers) == 1 +@pytest.mark.skipif(sys.version_info >= (3, 9) and WINDOWS, reason="#TODO") @pytest.mark.xfail( sys.version_info >= (3, 8) and LooseVersion(tornado.version) < "6.0.3", reason="Known issue with Python 3.8 and Tornado < 6.0.3. " diff --git a/distributed/tests/test_client_executor.py b/distributed/tests/test_client_executor.py index b55b86ce7c8..21d2dbd7e42 100644 --- a/distributed/tests/test_client_executor.py +++ b/distributed/tests/test_client_executor.py @@ -1,4 +1,5 @@ import random +import sys import time from concurrent.futures import ( @@ -14,6 +15,7 @@ from tlz import take from distributed import Client +from distributed.compatibility import WINDOWS from distributed.utils import CancelledError from distributed.utils_test import ( slowinc, @@ -95,6 +97,7 @@ def test_wait(client): assert "hello" in str(errors[0]) +@pytest.mark.skipif(sys.version_info >= (3, 9) and WINDOWS, reason="#TODO") @pytest.mark.flaky(reruns=10, reruns_delay=5) def test_cancellation(client): with client.get_executor(pure=False) as e: From 8c10d2c6709bab345239bc0c54fbee84bbb07e55 Mon Sep 17 00:00:00 2001 From: crusaderky Date: Thu, 25 Feb 2021 14:22:56 +0000 Subject: [PATCH 3/9] mark flaky test on macos --- distributed/dashboard/tests/test_scheduler_bokeh.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/distributed/dashboard/tests/test_scheduler_bokeh.py b/distributed/dashboard/tests/test_scheduler_bokeh.py index ed7cc299dec..9c50ae50434 100644 --- a/distributed/dashboard/tests/test_scheduler_bokeh.py +++ b/distributed/dashboard/tests/test_scheduler_bokeh.py @@ -15,9 +15,10 @@ import dask from dask.core import flatten from dask.utils import stringify -from distributed.utils import format_dashboard_link from distributed.client import wait +from distributed.compatibility import MACOS from distributed.metrics import time +from distributed.utils import format_dashboard_link from distributed.utils_test import gen_cluster, inc, dec, slowinc, div, get_cert from distributed.dashboard.components.worker import Counters from distributed.dashboard.scheduler import applications @@ -749,6 +750,7 @@ async def test_aggregate_action(c, s, a, b): assert ("compute") in mbk.action_source.data["names"] +@pytest.mark.flaky(reruns=10, reruns_delay=5, condition=MACOS) @gen_cluster(client=True, scheduler_kwargs={"dashboard": True}) async def test_compute_per_key(c, s, a, b): mbk = ComputePerKey(s) From 19514e7506613999b581b6ccaf9b2338abf13b18 Mon Sep 17 00:00:00 2001 From: crusaderky Date: Thu, 25 Feb 2021 14:23:08 +0000 Subject: [PATCH 4/9] fix mp_context on windows --- distributed/utils.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/distributed/utils.py b/distributed/utils.py index ddd4d07c3f9..502118218c7 100644 --- a/distributed/utils.py +++ b/distributed/utils.py @@ -10,6 +10,7 @@ import html import json import logging +import multiprocessing import os import re import shutil @@ -63,6 +64,12 @@ except ImportError: thread_state = threading.local() +# For some reason this is required in python >= 3.9 +if WINDOWS: + import multiprocessing.popen_spawn_win32 +else: + import multiprocessing.popen_spawn_posix + logger = _logger = logging.getLogger(__name__) @@ -70,12 +77,6 @@ def _initialize_mp_context(): - import multiprocessing # noqa: F401 - - if not WINDOWS: - # For some reason this is required in python >= 3.9 - import multiprocessing.popen_spawn_posix - if WINDOWS or PYPY: return multiprocessing else: From 14685bdb3953c46894baf9056f97552951f4f76c Mon Sep 17 00:00:00 2001 From: crusaderky Date: Thu, 25 Feb 2021 14:25:59 +0000 Subject: [PATCH 5/9] revert skip tests --- distributed/cli/tests/test_dask_worker.py | 2 -- distributed/deploy/tests/test_local.py | 2 -- distributed/tests/test_client_executor.py | 3 --- 3 files changed, 7 deletions(-) diff --git a/distributed/cli/tests/test_dask_worker.py b/distributed/cli/tests/test_dask_worker.py index d8a075c5dc2..853b9964128 100644 --- a/distributed/cli/tests/test_dask_worker.py +++ b/distributed/cli/tests/test_dask_worker.py @@ -12,7 +12,6 @@ import distributed.cli.dask_worker from distributed import Client, Scheduler -from distributed.compatibility import WINDOWS from distributed.deploy.utils import nprocesses_nthreads from distributed.metrics import time from distributed.utils import sync, tmpfile, parse_ports @@ -248,7 +247,6 @@ def test_nprocs_negative(loop): c.wait_for_workers(cpu_count(), timeout="10 seconds") -@pytest.mark.skipif(sys.version_info >= (3, 9) and WINDOWS, reason="#TODO") def test_nprocs_auto(loop): with popen(["dask-scheduler", "--no-dashboard"]) as sched: with popen(["dask-worker", "127.0.0.1:8786", "--nprocs=auto"]) as worker: diff --git a/distributed/deploy/tests/test_local.py b/distributed/deploy/tests/test_local.py index 2793f0f7987..5a35f36695c 100644 --- a/distributed/deploy/tests/test_local.py +++ b/distributed/deploy/tests/test_local.py @@ -16,7 +16,6 @@ from dask.system import CPU_COUNT from distributed import Client, Worker, Nanny, get_client -from distributed.compatibility import WINDOWS from distributed.core import Status from distributed.deploy.local import LocalCluster from distributed.metrics import time @@ -457,7 +456,6 @@ async def test_scale_up_and_down(): assert len(cluster.workers) == 1 -@pytest.mark.skipif(sys.version_info >= (3, 9) and WINDOWS, reason="#TODO") @pytest.mark.xfail( sys.version_info >= (3, 8) and LooseVersion(tornado.version) < "6.0.3", reason="Known issue with Python 3.8 and Tornado < 6.0.3. " diff --git a/distributed/tests/test_client_executor.py b/distributed/tests/test_client_executor.py index 21d2dbd7e42..b55b86ce7c8 100644 --- a/distributed/tests/test_client_executor.py +++ b/distributed/tests/test_client_executor.py @@ -1,5 +1,4 @@ import random -import sys import time from concurrent.futures import ( @@ -15,7 +14,6 @@ from tlz import take from distributed import Client -from distributed.compatibility import WINDOWS from distributed.utils import CancelledError from distributed.utils_test import ( slowinc, @@ -97,7 +95,6 @@ def test_wait(client): assert "hello" in str(errors[0]) -@pytest.mark.skipif(sys.version_info >= (3, 9) and WINDOWS, reason="#TODO") @pytest.mark.flaky(reruns=10, reruns_delay=5) def test_cancellation(client): with client.get_executor(pure=False) as e: From 99fa2192093fd3d2b6145763b49c32dfcc632b26 Mon Sep 17 00:00:00 2001 From: crusaderky Date: Fri, 26 Feb 2021 09:53:51 +0000 Subject: [PATCH 6/9] stress test --- .github/workflows/tests-macos.yaml | 5 +++-- .github/workflows/tests.yaml | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/tests-macos.yaml b/.github/workflows/tests-macos.yaml index 4caa4e04f82..dc5c5519da0 100644 --- a/.github/workflows/tests-macos.yaml +++ b/.github/workflows/tests-macos.yaml @@ -14,11 +14,12 @@ jobs: fail-fast: false matrix: # Many deterministic test failures on Python 3.6 - python-version: ["3.7", "3.8", "3.9"] + # python-version: ["3.7", "3.8", "3.9"] + python-version: ["3.9"] # Uncomment to stress-test the test suite for random failures # This will take a LONG time and delay all PRs across the whole github.com/dask! - # run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] + run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] steps: - name: Checkout source diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index d123f3affe6..9e5955c0c1e 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -13,11 +13,12 @@ jobs: # Linux and Windows, run on merge to master and on all pull requests. # On MacOS, run only on merge to master (see twin workflow tests-macos.yaml). os: [ubuntu-latest, windows-latest] - python-version: ["3.6", "3.7", "3.8", "3.9"] + # python-version: ["3.6", "3.7", "3.8", "3.9"] + python-version: ["3.9"] # Uncomment to stress-test the test suite for random failures # This will take a LONG time and delay all PRs across the whole github.com/dask! - # run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] + run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] steps: - name: Checkout source From 76ef209cc92300a521da2483ed72e76561474ef0 Mon Sep 17 00:00:00 2001 From: crusaderky Date: Fri, 26 Feb 2021 16:17:30 +0000 Subject: [PATCH 7/9] stress test MacOSX --- .github/workflows/tests-macos.yaml | 6 +++--- .github/workflows/tests.yaml | 5 ++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/.github/workflows/tests-macos.yaml b/.github/workflows/tests-macos.yaml index dc5c5519da0..2fd2a0b3678 100644 --- a/.github/workflows/tests-macos.yaml +++ b/.github/workflows/tests-macos.yaml @@ -13,13 +13,13 @@ jobs: strategy: fail-fast: false matrix: + run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] # Many deterministic test failures on Python 3.6 - # python-version: ["3.7", "3.8", "3.9"] - python-version: ["3.9"] + python-version: ["3.7", "3.8", "3.9"] # Uncomment to stress-test the test suite for random failures # This will take a LONG time and delay all PRs across the whole github.com/dask! - run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] + # run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] steps: - name: Checkout source diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 9e5955c0c1e..d123f3affe6 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -13,12 +13,11 @@ jobs: # Linux and Windows, run on merge to master and on all pull requests. # On MacOS, run only on merge to master (see twin workflow tests-macos.yaml). os: [ubuntu-latest, windows-latest] - # python-version: ["3.6", "3.7", "3.8", "3.9"] - python-version: ["3.9"] + python-version: ["3.6", "3.7", "3.8", "3.9"] # Uncomment to stress-test the test suite for random failures # This will take a LONG time and delay all PRs across the whole github.com/dask! - run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] + # run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] steps: - name: Checkout source From 22b14a7b7770c856149b5b7e0d7cd420b56e42d6 Mon Sep 17 00:00:00 2001 From: crusaderky Date: Sat, 27 Feb 2021 17:29:13 +0000 Subject: [PATCH 8/9] Enable MacOS tests on all PRs --- .github/workflows/tests-macos.yaml | 71 ----------------------- .github/workflows/tests.yaml | 9 +-- distributed/deploy/tests/test_adaptive.py | 2 +- 3 files changed, 6 insertions(+), 76 deletions(-) delete mode 100644 .github/workflows/tests-macos.yaml diff --git a/.github/workflows/tests-macos.yaml b/.github/workflows/tests-macos.yaml deleted file mode 100644 index 2fd2a0b3678..00000000000 --- a/.github/workflows/tests-macos.yaml +++ /dev/null @@ -1,71 +0,0 @@ -name: MacOS tests - -on: - - push - # MacOS tests are currently afflicted by a very high level of flakiness; do not run on - # PR unless this line is uncommented. - - pull_request - -jobs: - test: - runs-on: macos-latest - - strategy: - fail-fast: false - matrix: - run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] - # Many deterministic test failures on Python 3.6 - python-version: ["3.7", "3.8", "3.9"] - - # Uncomment to stress-test the test suite for random failures - # This will take a LONG time and delay all PRs across the whole github.com/dask! - # run: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] - - steps: - - name: Checkout source - uses: actions/checkout@v2 - - - name: Setup Conda Environment - uses: conda-incubator/setup-miniconda@v2 - with: - miniconda-version: latest - python-version: ${{ matrix.python-version }} - environment-file: continuous_integration/environment-${{ matrix.python-version }}.yaml - activate-environment: dask-distributed - auto-activate-base: false - - - name: Cythonize - shell: bash -l {0} - if: ${{ matrix.python-version == '3.7' }} - run: python setup.py build_ext --with-cython - - - name: Install - shell: bash -l {0} - run: python -m pip install --no-deps -e . - - - name: conda list - shell: bash -l {0} - run: conda list - - - name: conda env export - shell: bash -l {0} - run: | - echo -e "--\n--Conda Environment (re-create this with \`conda env create --name -f \`)\n--" - conda env export | grep -E -v '^prefix:.*$' - - - name: Setup SSH - shell: bash -l {0} - run: bash continuous_integration/scripts/setup_ssh.sh - - - name: Test - shell: bash -l {0} - env: - PYTHONFAULTHANDLER: 1 - MARKERS: not avoid_ci - run: | - source continuous_integration/scripts/set_ulimit.sh - pytest distributed -m "not avoid_ci" --runslow - - # - name: Debug with tmate on failure - # if: ${{ failure() }} - # uses: mxschmitt/action-tmate@v3 diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index d123f3affe6..c27ae784ea8 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -9,11 +9,12 @@ jobs: strategy: fail-fast: false matrix: - # MacOS tests are currently afflicted by a very high level of flakiness. On - # Linux and Windows, run on merge to master and on all pull requests. - # On MacOS, run only on merge to master (see twin workflow tests-macos.yaml). - os: [ubuntu-latest, windows-latest] + os: [ubuntu-latest, windows-latest, macos-latest] python-version: ["3.6", "3.7", "3.8", "3.9"] + exclude: + # Several failures; Python 3.6 to be phased out soon + - os: macos-latest + python-version: "3.6" # Uncomment to stress-test the test suite for random failures # This will take a LONG time and delay all PRs across the whole github.com/dask! diff --git a/distributed/deploy/tests/test_adaptive.py b/distributed/deploy/tests/test_adaptive.py index 5f84b3165b4..e747cf95a20 100644 --- a/distributed/deploy/tests/test_adaptive.py +++ b/distributed/deploy/tests/test_adaptive.py @@ -302,7 +302,7 @@ async def test_adapt_down(): start = time() while len(cluster.scheduler.workers) != 2: await asyncio.sleep(0.1) - assert time() < start + 3 + assert time() < start + 60 @gen_test(timeout=30) From fdd9faa0e2016e777e9cb17249fb3b0ae499b480 Mon Sep 17 00:00:00 2001 From: crusaderky Date: Sat, 27 Feb 2021 20:59:09 +0000 Subject: [PATCH 9/9] flaky test --- distributed/deploy/tests/test_spec_cluster.py | 1 + 1 file changed, 1 insertion(+) diff --git a/distributed/deploy/tests/test_spec_cluster.py b/distributed/deploy/tests/test_spec_cluster.py index 7a0f60ba011..afdc10cbe04 100644 --- a/distributed/deploy/tests/test_spec_cluster.py +++ b/distributed/deploy/tests/test_spec_cluster.py @@ -196,6 +196,7 @@ async def test_unexpected_closed_worker(cleanup): assert len(cluster.workers) == 2 +@pytest.mark.flaky(reruns=10, reruns_delay=5) @pytest.mark.slow @pytest.mark.asyncio async def test_restart(cleanup):