Braun Reyes
10/06/2023, 8:15 PMTraceback (most recent call last):
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/engine.py", line 830, in orchestrate_flow_run
result = await flow_call.aresult()
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/_internal/concurrency/calls.py", line 292, in aresult
return await asyncio.wrap_future(self.future)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/_internal/concurrency/calls.py", line 346, in _run_async
result = await coro
File "/tmp/**********-v2/repo/data-products/src/article_text_streaming/article_text_streaming_flow.py", line 274, in main
extract_results = [await e.result() for e in extract_jobs]
File "/tmp/**********-v2/repo/data-products/src/article_text_streaming/article_text_streaming_flow.py", line 274, in <listcomp>
extract_results = [await e.result() for e in extract_jobs]
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/_internal/concurrency/calls.py", line 292, in aresult
return await asyncio.wrap_future(self.future)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/_internal/concurrency/calls.py", line 346, in _run_async
result = await coro
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/futures.py", line 237, in _result
return await final_state.result(raise_on_failure=raise_on_failure, fetch=True)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/states.py", line 91, in _get_state_result
raise await get_state_exception(state)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect_dask/task_runners.py", line 298, in wait
return await future.result(timeout=timeout)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/distributed/client.py", line 299, in _result
raise exc.with_traceback(tb)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/engine.py", line 1525, in begin_task_run
client = await stack.enter_async_context(get_client())
File "/home/circleci/.pyenv/versions/3.10.13/lib/python3.10/contextlib.py", line 619, in enter_async_context
result = await _cm_type.__aenter__(cm)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/client/orchestration.py", line 2582, in __aenter__
self._ephemeral_lifespan = await self._exit_stack.enter_async_context(
File "/home/circleci/.pyenv/versions/3.10.13/lib/python3.10/contextlib.py", line 619, in enter_async_context
result = await _cm_type.__aenter__(cm)
File "/home/circleci/.pyenv/versions/3.10.13/lib/python3.10/contextlib.py", line 199, in __aenter__
return await anext(self.gen)
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/prefect/client/base.py", line 98, in app_lifespan_context
await context.__aenter__()
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/asgi_lifespan/_manager.py", line 99, in __aenter__
await self.startup()
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/asgi_lifespan/_manager.py", line 40, in startup
await self._concurrency_backend.run_and_fail_after(
File "/home/circleci/.cache/pypoetry/virtualenvs/data-products-g8yaJdDl-py3.10/lib/python3.10/site-packages/asgi_lifespan/_concurrency/asyncio.py", line 46, in run_and_fail_after
raise TimeoutError
TimeoutError
Marvin
10/06/2023, 8:15 PMTimeoutError
. This typically means that an operation took longer than the allotted time and was thus aborted. In this case, it seems to be occurring within the Prefect workflow management system, specifically when trying to start up the application context.
The stack trace shows that the error originates from the asgi_lifespan/_concurrency/asyncio.py
file, in the run_and_fail_after
function. This function is likely designed to run a task and fail if it takes too long, hence the timeout error.
The error then propagates up through the Prefect library, specifically through the prefect/client/base.py
and prefect/client/orchestration.py
files. These files are responsible for managing the application context and the orchestration of tasks, respectively.
Finally, the error reaches your code in the article_text_streaming_flow.py
file, where you're trying to extract results from some jobs.
In essence, it seems like one of the tasks in your Prefect workflow is taking too long to complete, causing the application context to time out. You might want to look into optimizing your tasks, or increasing the timeout limit if possible. But remember, time is an illusion, especially for a robot like me.