From 13973bd61b43e52f1f4439d6c85fe285d03b1d6d Mon Sep 17 00:00:00 2001 From: Phil Elson Date: Tue, 13 Jul 2021 12:15:39 +0200 Subject: [PATCH] Revert the multiprocessing change from #214. --- cara/apps/calculator/__init__.py | 11 ++--------- cara/tests/apps/calculator/test_webapp.py | 4 +++- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/cara/apps/calculator/__init__.py b/cara/apps/calculator/__init__.py index a6a2b4db..cbdfd1c0 100644 --- a/cara/apps/calculator/__init__.py +++ b/cara/apps/calculator/__init__.py @@ -111,10 +111,7 @@ class ConcentrationModel(BaseRequestHandler): base_url = self.request.protocol + "://" + self.request.host report_generator: ReportGenerator = self.settings['report_generator'] - report_task = self.settings["worker_pool"].submit( - report_generator.build_report, base_url, form, - ) - report: str = await asyncio.wrap_future(report_task) + report = report_generator.build_report(base_url, form) if self.settings.get("debug", False): dt = (datetime.datetime.now() - start) print(f'Report response time {dt.seconds}.{dt.microseconds}s') @@ -126,10 +123,7 @@ class StaticModel(BaseRequestHandler): form = model_generator.FormData.from_dict(model_generator.baseline_raw_form_data()) base_url = self.request.protocol + "://" + self.request.host report_generator: ReportGenerator = self.settings['report_generator'] - report_task = self.settings["worker_pool"].submit( - report_generator.build_report, base_url, form, - ) - report: str = await asyncio.wrap_future(report_task) + report = report_generator.build_report(base_url, form) self.finish(report) @@ -239,5 +233,4 @@ def make_app( # COOKIE_SECRET being undefined will result in no login information being # presented to the user. cookie_secret=os.environ.get('COOKIE_SECRET', ''), - worker_pool=concurrent.futures.ProcessPoolExecutor(), ) diff --git a/cara/tests/apps/calculator/test_webapp.py b/cara/tests/apps/calculator/test_webapp.py index 40b75595..edbbe9f4 100644 --- a/cara/tests/apps/calculator/test_webapp.py +++ b/cara/tests/apps/calculator/test_webapp.py @@ -63,7 +63,9 @@ class TestBasicApp(tornado.testing.AsyncHTTPTestCase): # but the end time is after the other request (because it takes longer # to process a report than a simple page). assert response.start_time < other_response.start_time - assert end_time(response) > end_time(other_response) + # Known fail after reverting in https://gitlab.cern.ch/cara/cara/-/merge_requests/219. + with pytest.raises(AssertionError): + assert end_time(response) > end_time(other_response) self.assertEqual(response.code, 200) assert 'CERN HSE' not in response.body.decode()