mirror of
https://github.com/jupyterhub/jupyterhub.git
synced 2025-10-19 16:03:00 +00:00
Replace gen.sleep with asyncio.sleep
This commit is contained in:
@@ -1538,7 +1538,7 @@ class UserUrlHandler(BaseHandler):
|
||||
if redirects:
|
||||
self.log.warning("Redirect loop detected on %s", self.request.uri)
|
||||
# add capped exponential backoff where cap is 10s
|
||||
await gen.sleep(min(1 * (2 ** redirects), 10))
|
||||
await asyncio.sleep(min(1 * (2 ** redirects), 10))
|
||||
# rewrite target url with new `redirects` query value
|
||||
url_parts = urlparse(target)
|
||||
query_parts = parse_qs(url_parts.query)
|
||||
|
@@ -20,7 +20,6 @@ from urllib.parse import urlparse
|
||||
|
||||
from jinja2 import ChoiceLoader
|
||||
from jinja2 import FunctionLoader
|
||||
from tornado import gen
|
||||
from tornado import ioloop
|
||||
from tornado.httpclient import AsyncHTTPClient
|
||||
from tornado.httpclient import HTTPRequest
|
||||
@@ -434,7 +433,7 @@ class SingleUserNotebookAppMixin(Configurable):
|
||||
i,
|
||||
RETRIES,
|
||||
)
|
||||
await gen.sleep(min(2 ** i, 16))
|
||||
await asyncio.sleep(min(2 ** i, 16))
|
||||
else:
|
||||
break
|
||||
else:
|
||||
|
@@ -36,7 +36,6 @@ from unittest import mock
|
||||
from urllib.parse import urlparse
|
||||
|
||||
from pamela import PAMError
|
||||
from tornado import gen
|
||||
from tornado.ioloop import IOLoop
|
||||
from traitlets import Bool
|
||||
from traitlets import default
|
||||
@@ -114,11 +113,11 @@ class SlowSpawner(MockSpawner):
|
||||
if self._start_future is not None:
|
||||
await self._start_future
|
||||
else:
|
||||
await gen.sleep(self.delay)
|
||||
await asyncio.sleep(self.delay)
|
||||
return ip, port
|
||||
|
||||
async def stop(self):
|
||||
await gen.sleep(self.delay)
|
||||
await asyncio.sleep(self.delay)
|
||||
await super().stop()
|
||||
|
||||
|
||||
|
@@ -613,7 +613,7 @@ async def test_slow_spawn(app, no_patience, slow_spawn):
|
||||
|
||||
async def wait_spawn():
|
||||
while not app_user.running:
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
|
||||
await wait_spawn()
|
||||
assert not app_user.spawner._spawn_pending
|
||||
@@ -622,7 +622,7 @@ async def test_slow_spawn(app, no_patience, slow_spawn):
|
||||
|
||||
async def wait_stop():
|
||||
while app_user.spawner._stop_pending:
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
|
||||
r = await api_request(app, 'users', name, 'server', method='delete')
|
||||
r.raise_for_status()
|
||||
@@ -656,7 +656,7 @@ async def test_never_spawn(app, no_patience, never_spawn):
|
||||
assert app.users.count_active_users()['pending'] == 1
|
||||
|
||||
while app_user.spawner.pending:
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
print(app_user.spawner.pending)
|
||||
|
||||
assert not app_user.spawner._spawn_pending
|
||||
@@ -682,7 +682,7 @@ async def test_slow_bad_spawn(app, no_patience, slow_bad_spawn):
|
||||
r = await api_request(app, 'users', name, 'server', method='post')
|
||||
r.raise_for_status()
|
||||
while user.spawner.pending:
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
# spawn failed
|
||||
assert not user.running
|
||||
assert app.users.count_active_users()['pending'] == 0
|
||||
@@ -824,7 +824,7 @@ async def progress_forever():
|
||||
for i in range(1, 10):
|
||||
await yield_({'progress': i, 'message': 'Stage %s' % i})
|
||||
# wait a long time before the next event
|
||||
await gen.sleep(10)
|
||||
await asyncio.sleep(10)
|
||||
|
||||
|
||||
if sys.version_info >= (3, 6):
|
||||
@@ -840,7 +840,7 @@ async def progress_forever_native():
|
||||
'message': 'Stage %s' % i,
|
||||
}
|
||||
# wait a long time before the next event
|
||||
await gen.sleep(10)
|
||||
await asyncio.sleep(10)
|
||||
""",
|
||||
globals(),
|
||||
)
|
||||
@@ -902,7 +902,7 @@ async def test_spawn_limit(app, no_patience, slow_spawn, request):
|
||||
users[0].spawner._start_future.set_result(None)
|
||||
# wait for ykka to finish
|
||||
while not users[0].running:
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
|
||||
assert app.users.count_active_users()['pending'] == 1
|
||||
r = await api_request(app, 'users', name, 'server', method='post')
|
||||
@@ -913,7 +913,7 @@ async def test_spawn_limit(app, no_patience, slow_spawn, request):
|
||||
for user in users[1:]:
|
||||
user.spawner._start_future.set_result(None)
|
||||
while not all(u.running for u in users):
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
|
||||
# everybody's running, pending count should be back to 0
|
||||
assert app.users.count_active_users()['pending'] == 0
|
||||
@@ -922,7 +922,7 @@ async def test_spawn_limit(app, no_patience, slow_spawn, request):
|
||||
r = await api_request(app, 'users', u.name, 'server', method='delete')
|
||||
r.raise_for_status()
|
||||
while any(u.spawner.active for u in users):
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
|
||||
|
||||
@mark.slow
|
||||
@@ -1000,7 +1000,7 @@ async def test_start_stop_race(app, no_patience, slow_spawn):
|
||||
r = await api_request(app, 'users', user.name, 'server', method='delete')
|
||||
assert r.status_code == 400
|
||||
while not spawner.ready:
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
|
||||
spawner.delay = 3
|
||||
# stop the spawner
|
||||
@@ -1008,7 +1008,7 @@ async def test_start_stop_race(app, no_patience, slow_spawn):
|
||||
assert r.status_code == 202
|
||||
assert spawner.pending == 'stop'
|
||||
# make sure we get past deleting from the proxy
|
||||
await gen.sleep(1)
|
||||
await asyncio.sleep(1)
|
||||
# additional stops while stopping shouldn't trigger a new stop
|
||||
with mock.patch.object(spawner, 'stop') as m:
|
||||
r = await api_request(app, 'users', user.name, 'server', method='delete')
|
||||
@@ -1020,7 +1020,7 @@ async def test_start_stop_race(app, no_patience, slow_spawn):
|
||||
assert r.status_code == 400
|
||||
|
||||
while spawner.active:
|
||||
await gen.sleep(0.1)
|
||||
await asyncio.sleep(0.1)
|
||||
# start after stop is okay
|
||||
r = await api_request(app, 'users', user.name, 'server', method='post')
|
||||
assert r.status_code == 202
|
||||
|
@@ -8,7 +8,6 @@ from urllib.parse import urlparse
|
||||
|
||||
import pytest
|
||||
from bs4 import BeautifulSoup
|
||||
from tornado import gen
|
||||
from tornado.escape import url_escape
|
||||
from tornado.httputil import url_concat
|
||||
|
||||
|
@@ -1,6 +1,7 @@
|
||||
"""Tests for process spawning"""
|
||||
# Copyright (c) Jupyter Development Team.
|
||||
# Distributed under the terms of the Modified BSD License.
|
||||
import asyncio
|
||||
import logging
|
||||
import os
|
||||
import signal
|
||||
@@ -12,7 +13,6 @@ from unittest import mock
|
||||
from urllib.parse import urlparse
|
||||
|
||||
import pytest
|
||||
from tornado import gen
|
||||
|
||||
from .. import orm
|
||||
from .. import spawner as spawnermod
|
||||
@@ -123,7 +123,7 @@ async def test_stop_spawner_sigint_fails(db):
|
||||
await spawner.start()
|
||||
|
||||
# wait for the process to get to the while True: loop
|
||||
await gen.sleep(1)
|
||||
await asyncio.sleep(1)
|
||||
|
||||
status = await spawner.poll()
|
||||
assert status is None
|
||||
@@ -138,7 +138,7 @@ async def test_stop_spawner_stop_now(db):
|
||||
await spawner.start()
|
||||
|
||||
# wait for the process to get to the while True: loop
|
||||
await gen.sleep(1)
|
||||
await asyncio.sleep(1)
|
||||
|
||||
status = await spawner.poll()
|
||||
assert status is None
|
||||
@@ -165,7 +165,7 @@ async def test_spawner_poll(db):
|
||||
spawner.start_polling()
|
||||
|
||||
# wait for the process to get to the while True: loop
|
||||
await gen.sleep(1)
|
||||
await asyncio.sleep(1)
|
||||
status = await spawner.poll()
|
||||
assert status is None
|
||||
|
||||
@@ -173,12 +173,12 @@ async def test_spawner_poll(db):
|
||||
proc.terminate()
|
||||
for i in range(10):
|
||||
if proc.poll() is None:
|
||||
await gen.sleep(1)
|
||||
await asyncio.sleep(1)
|
||||
else:
|
||||
break
|
||||
assert proc.poll() is not None
|
||||
|
||||
await gen.sleep(2)
|
||||
await asyncio.sleep(2)
|
||||
status = await spawner.poll()
|
||||
assert status is not None
|
||||
|
||||
|
@@ -24,7 +24,6 @@ from async_generator import aclosing
|
||||
from async_generator import async_generator
|
||||
from async_generator import asynccontextmanager
|
||||
from async_generator import yield_
|
||||
from tornado import gen
|
||||
from tornado import ioloop
|
||||
from tornado import web
|
||||
from tornado.httpclient import AsyncHTTPClient
|
||||
@@ -175,7 +174,7 @@ async def exponential_backoff(
|
||||
dt = min(max_wait, remaining, random.uniform(0, start_wait * scale))
|
||||
if dt < max_wait:
|
||||
scale *= scale_factor
|
||||
await gen.sleep(dt)
|
||||
await asyncio.sleep(dt)
|
||||
raise TimeoutError(fail_message)
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user