integration: Timeout error while installing

Version of HACS

0.15.11

Describe the bug

Update or reinstall is deleting the hacs folder and then it stops

Debug log

2019-10-23 21:17:46 ERROR (MainThread) [backoff] Giving up async_download_file(...) after 5 tries (concurrent.futures._base.TimeoutError)
2019-10-23 21:17:46 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/config/custom_components/hacs/handler/download.py", line 36, in async_download_file
  File "/usr/local/lib/python3.7/site-packages/aiohttp/client_reqrep.py", line 973, in read
    self._body = await self.content.read()
  File "/usr/local/lib/python3.7/site-packages/aiohttp/streams.py", line 358, in read
    block = await self.readany()
  File "/usr/local/lib/python3.7/site-packages/aiohttp/streams.py", line 380, in readany
    await self._wait('readany')
  File "/usr/local/lib/python3.7/site-packages/aiohttp/streams.py", line 296, in _wait
    await waiter
concurrent.futures._base.CancelledError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/hacs/api.py", line 43, in post
  File "/config/custom_components/hacs/api.py", line 168, in response
  File "/config/custom_components/hacs/repositories/repository.py", line 384, in install
  File "/config/custom_components/hacs/repositories/repository.py", line 456, in download_zip
  File "/usr/local/lib/python3.7/site-packages/backoff/_async.py", line 131, in retry
    ret = await target(*args, **kwargs)
  File "/config/custom_components/hacs/handler/download.py", line 40, in async_download_file
  File "/usr/local/lib/python3.7/site-packages/async_timeout/__init__.py", line 45, in __exit__
    self._do_exit(exc_type)
  File "/usr/local/lib/python3.7/site-packages/async_timeout/__init__.py", line 92, in _do_exit
    raise asyncio.TimeoutError
concurrent.futures._base.TimeoutError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/real_ip.py", line 40, in real_ip_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 73, in ban_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 231, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 128, in handle
    result = await result
  File "/config/custom_components/hacs/api.py", line 45, in post
  File "/config/custom_components/hacs/http.py", line 98, in render
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 830, in get_template
    return self._load_template(name, self.make_globals(globals))
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 804, in _load_template
    template = self.loader.load(self, name, globals)
  File "/usr/local/lib/python3.7/site-packages/jinja2/loaders.py", line 113, in load
    source, filename, uptodate = self.get_source(environment, name)
  File "/usr/local/lib/python3.7/site-packages/jinja2/loaders.py", line 235, in get_source
    raise TemplateNotFound(template)
jinja2.exceptions.TemplateNotFound: error.html

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 22 (12 by maintainers)

Commits related to this issue

Most upvoted comments

I’ll set the timeout to 60 seconds and it’s working So that means my raspberry pi 3+ is too slow?

That does not make sense, that is more or less the same thing that the integration does, with has a set timeout of 5s, which is a good amount over what you see there…

Can you in custom_components/hacs/handler/download.py change line 31

from:

with async_timeout.timeout(5, loop=hass.loop):

to:

with async_timeout.timeout(20, loop=hass.loop):

basically changing the 5 to 20, to give it more time, and see if that helps on your issue?