Closed Bug 1620262 Opened 4 years ago Closed 4 years ago

[scriptworker] Intermittent asyncio.exceptions.TimeoutError

Categories

(Release Engineering :: Release Automation: Other, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: malexandru, Assigned: mozilla)

References

Details

Attachments

(1 file)

Failure log: https://firefox-ci-tc.services.mozilla.com/tasks/FGZhXRKsT2OAu-zIfTdAGw/runs/0/logs/https%3A%2F%2Ffirefox-ci-tc.services.mozilla.com%2Fapi%2Fqueue%2Fv1%2Ftask%2FFGZhXRKsT2OAu-zIfTdAGw%2Fruns%2F0%2Fartifacts%2Fpublic%2Flogs%2Fchain_of_trust.log#L123

Raw log: https://firefoxci.taskcluster-artifacts.net/FGZhXRKsT2OAu-zIfTdAGw/0/public/logs/chain_of_trust.log

 'workerType': 'gecko-3-signing'},
 'takenUntil': '2020-03-05T13:40:16.635Z',
 'workerGroup': 'gecko-3-signing',
 'workerId': 'gecko-3-signing-j59r6udbsguvyqfuq7uqa'}
2020-03-05T13:20:16    DEBUG -  waiting 300 seconds before reclaiming...
2020-03-05T13:20:24    ERROR - SCRIPTWORKER_UNEXPECTED_EXCEPTION task 
Traceback (most recent call last):
  File "/app/lib/python3.8/site-packages/scriptworker/worker.py", line 55, in do_run_task
    await run_cancellable(verify_chain_of_trust(chain))
  File "/app/lib/python3.8/site-packages/scriptworker/worker.py", line 156, in _run_cancellable
    result = await self.future
  File "/app/lib/python3.8/site-packages/scriptworker/cot/verify.py", line 1908, in verify_chain_of_trust
    await verify_task_types(chain)
  File "/app/lib/python3.8/site-packages/scriptworker/cot/verify.py", line 1668, in verify_task_types
    await valid_task_types[task_type](chain, obj)
  File "/app/lib/python3.8/site-packages/scriptworker/cot/verify.py", line 1592, in verify_parent_task
    await verify_parent_task_definition(chain, link)
  File "/app/lib/python3.8/site-packages/scriptworker/cot/verify.py", line 1463, in verify_parent_task_definition
    jsone_context, tmpl = await get_jsone_context_and_template(chain, parent_link, decision_link, tasks_for)
  File "/app/lib/python3.8/site-packages/scriptworker/cot/verify.py", line 1432, in get_jsone_context_and_template
    tmpl = await get_in_tree_template(decision_link)
  File "/app/lib/python3.8/site-packages/scriptworker/cot/verify.py", line 1289, in get_in_tree_template
    tmpl = await load_json_or_yaml_from_url(context, source_url, os.path.join(context.config["work_dir"], "{}_taskcluster.yml".format(link.name)), auth=auth)
  File "/app/lib/python3.8/site-packages/scriptworker/utils.py", line 735, in load_json_or_yaml_from_url
    await retry_async(download_file, args=(context, url, path), kwargs=kwargs, retry_exceptions=(DownloadError, aiohttp.ClientError))
  File "/app/lib/python3.8/site-packages/scriptworker/utils.py", line 259, in retry_async
    return await func(*args, **kwargs)
  File "/app/lib/python3.8/site-packages/scriptworker/utils.py", line 655, in download_file
    async with session.get(url, auth=auth) as resp:
  File "/app/lib/python3.8/site-packages/aiohttp/client.py", line 1012, in __aenter__
    self._resp = await self._coro
  File "/app/lib/python3.8/site-packages/aiohttp/client.py", line 504, in _request
    await resp.start(conn)
  File "/app/lib/python3.8/site-packages/aiohttp/client_reqrep.py", line 860, in start
    self._continue = None
  File "/app/lib/python3.8/site-packages/aiohttp/helpers.py", line 596, in __exit__
    raise asyncio.TimeoutError from None
asyncio.exceptions.TimeoutError
2020-03-05T13:20:24    DEBUG -  "/app/artifacts/public/logs/chain_of_trust.log" is encoded with "None" and has mime/type "text/plain"
2020-03-05T13:20:24     INFO - "/app/artifacts/public/logs/chain_of_trust.log" can be gzip'd. Compressing...

We seem to be going through a spell of higher than normal network errors, or possibly something changed behaviour in a dependency. eg CoT download errors in
https://firefoxci.taskcluster-artifacts.net/Fv9yv1CKRqCecDECQW4eUA/0/public/logs/chain_of_trust.log
https://firefoxci.taskcluster-artifacts.net/Fv9yv1CKRqCecDECQW4eUA/0/public/logs/chain_of_trust.log

It looks like we should port the fix in bug 1624794 for upload_file() to download_file too. Maybe grep over scriptworker for use of aiohttp.ClientError to retry where we don't also use asyncio.TimeoutError.

Component: Release Automation: Signing → Release Automation: Other
QA Contact: aki → sfraser
See Also: → 1624794
Summary: Intermittent asyncio.exceptions.TimeoutError → [scriptworker] Intermittent asyncio.exceptions.TimeoutError
Assignee: nobody → aki

Scriptworker 33.0.1 is in production.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
See Also: → 1648664
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: