HAOS core failed to update from from 2026.2.3 to 2026.3.x

My HAOS core failed to update from 2026.2.3 to 2026.3.0 or 2026.3.1. Please help.

s6-rc: info: service legacy-services: stopping
[20:46:46] INFO: Home Assistant Core finish process exit code 0
[20:46:46] INFO: Home Assistant Core service shutdown
s6-rc: info: service legacy-services successfully stopped
s6-rc: info: service legacy-cont-init: stopping
s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service fix-attrs successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun home-assistant (no readiness notification)
s6-rc: info: service legacy-services successfully started
2026-03-06 20:47:01.984 ERROR (MainThread) [root] Uncaught exception
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/usr/src/homeassistant/homeassistant/__main__.py", line 229, in <module>
    sys.exit(main())
             ~~~~^^
  File "/usr/src/homeassistant/homeassistant/__main__.py", line 215, in main
    exit_code = runner.run(runtime_conf)
  File "/usr/src/homeassistant/homeassistant/runner.py", line 289, in run
    return loop.run_until_complete(setup_and_run_hass(runtime_config))
           ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.14/asyncio/base_events.py", line 719, in run_until_complete
    return future.result()
           ~~~~~~~~~~~~~^^
  File "/usr/src/homeassistant/homeassistant/runner.py", line 256, in setup_and_run_hass
    hass = await bootstrap.async_setup_hass(runtime_config)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 343, in async_setup_hass
    await async_from_config_dict(config_dict, hass) is not None
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 531, in async_from_config_dict
    await async_process_ha_core_config(hass, core_config)
  File "/usr/src/homeassistant/homeassistant/core_config.py", line 376, in async_process_ha_core_config
    await hass.config.async_load()
  File "/usr/src/homeassistant/homeassistant/core_config.py", line 797, in async_load
    await self._async_update(
    ...<13 lines>...
    )
  File "/usr/src/homeassistant/homeassistant/core_config.py", line 762, in _async_update
    await self.async_set_time_zone(time_zone)
  File "/usr/src/homeassistant/homeassistant/core_config.py", line 716, in async_set_time_zone
    if time_zone := await dt_util.async_get_time_zone(time_zone_str):
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/util/dt.py", line 116, in async_get_time_zone
    return await _async_get_time_zone(time_zone_str)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.14/site-packages/aiozoneinfo/__init__.py", line 34, in async_get_time_zone
    ) or await asyncio.get_running_loop().run_in_executor(
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        None, get_time_zone, time_zone_str
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/local/lib/python3.14/concurrent/futures/thread.py", line 86, in run
    result = ctx.run(self.task)
  File "/usr/local/lib/python3.14/concurrent/futures/thread.py", line 73, in run
    return fn(*args, **kwargs)
  File "/usr/local/lib/python3.14/site-packages/aiozoneinfo/__init__.py", line 27, in get_time_zone
    return zoneinfo.ZoneInfo(time_zone_str)
           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.14/zoneinfo/_common.py", line 33, in load_data
    header = _TZifHeader.from_file(fobj)
  File "/usr/local/lib/python3.14/zoneinfo/_common.py", line 151, in from_file
    raise ValueError("Invalid TZif file: magic not found")
ValueError: Invalid TZif file: magic not found
[20:47:02] INFO: Home Assistant Core finish process exit code 1
[20:47:02] INFO: Home Assistant Core service shutdown
s6-rc: info: service legacy-services: stopping
s6-rc: info: service legacy-services successfully stopped
s6-rc: info: service legacy-cont-init: stopping
s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service fix-attrs successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun home-assistant (no readiness notification)
s6-rc: info: service legacy-services successfully started
2026-03-06 22:47:13.246 ERROR (MainThread) [homeassistant.components.hassio.handler] Client error on /supervisor/options request 500, message='Attempt to decode JSON with unexpected mimetype: text/plain; charset=utf-8', url='http://172.30.32.2/supervisor/options'
2026-03-07 07:26:28.026 INFO (MainThread) [supervisor.homeassistant.core] Updating Home Assistant to version 2026.3.1
2026-03-07 07:26:28.027 INFO (MainThread) [supervisor.docker.interface] Updating image ghcr.io/home-assistant/qemux86-64-homeassistant:2026.2.3 to ghcr.io/home-assistant/qemux86-64-homeassistant:2026.3.1
2026-03-07 07:26:28.948 INFO (MainThread) [supervisor.docker.interface] Downloading docker image ghcr.io/home-assistant/qemux86-64-homeassistant with tag 2026.3.1.
2026-03-07 07:28:30.537 INFO (MainThread) [supervisor.docker.manager] Stopping homeassistant application
2026-03-07 07:28:37.794 INFO (MainThread) [supervisor.docker.manager] Cleaning homeassistant application
2026-03-07 07:28:38.135 INFO (MainThread) [supervisor.homeassistant.module] Update pulse/client.config: /data/tmp/homeassistant_pulse
2026-03-07 07:28:39.680 INFO (MainThread) [supervisor.docker.homeassistant] Starting Home Assistant ghcr.io/home-assistant/qemux86-64-homeassistant with version 2026.3.1
2026-03-07 07:28:39.680 INFO (MainThread) [supervisor.homeassistant.core] Wait until Home Assistant is ready
2026-03-07 07:28:54.703 ERROR (MainThread) [supervisor.homeassistant.core] Home Assistant has crashed!
2026-03-07 07:28:54.703 CRITICAL (MainThread) [supervisor.homeassistant.core] HomeAssistant update failed -> rollback!
2026-03-07 07:28:54.706 INFO (MainThread) [supervisor.resolution.module] Create new issue update_rollback - core / None
2026-03-07 07:28:54.708 INFO (MainThread) [supervisor.homeassistant.core] Updating Home Assistant to version 2026.2.3
2026-03-07 07:28:54.708 INFO (MainThread) [supervisor.docker.interface] Updating image ghcr.io/home-assistant/qemux86-64-homeassistant:2026.3.1 to ghcr.io/home-assistant/qemux86-64-homeassistant:2026.2.3
2026-03-07 07:28:55.237 INFO (MainThread) [supervisor.docker.interface] Downloading docker image ghcr.io/home-assistant/qemux86-64-homeassistant with tag 2026.2.3.
2026-03-07 07:28:56.318 INFO (MainThread) [supervisor.docker.manager] Cleaning homeassistant application
2026-03-07 07:28:56.508 INFO (MainThread) [supervisor.homeassistant.module] Update pulse/client.config: /data/tmp/homeassistant_pulse
2026-03-07 07:28:58.136 INFO (MainThread) [supervisor.docker.homeassistant] Starting Home Assistant ghcr.io/home-assistant/qemux86-64-homeassistant with version 2026.2.3
2026-03-07 07:28:58.136 INFO (MainThread) [supervisor.homeassistant.core] Wait until Home Assistant is ready
2026-03-07 07:29:04.508 ERROR (MainThread) [aiohttp.server] Error handling request from 172.30.32.1
Traceback (most recent call last):
  File "/usr/local/lib/python3.13/site-packages/aiohttp/web_protocol.py", line 510, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/sentry_sdk/integrations/aiohttp.py", line 155, in sentry_app_handle
    reraise(*_capture_exception())
    ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/sentry_sdk/utils.py", line 1784, in reraise
    raise value
  File "/usr/local/lib/python3.13/site-packages/sentry_sdk/integrations/aiohttp.py", line 138, in sentry_app_handle
    response = await old_handle(self, request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/aiohttp/web_app.py", line 569, in _handle
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/supervisor/supervisor/api/middleware/security.py", line 199, in block_bad_requests
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/supervisor/supervisor/api/middleware/security.py", line 211, in system_validation
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/supervisor/supervisor/api/middleware/security.py", line 281, in token_validation
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/supervisor/supervisor/api/middleware/security.py", line 296, in core_proxy
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/supervisor/supervisor/api/utils.py", line 69, in wrap_api
    answer = await method(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/supervisor/supervisor/api/supervisor.py", line 139, in options
    await self.sys_run_in_executor(validate_timezone, timezone)
  File "/usr/local/lib/python3.13/concurrent/futures/thread.py", line 59, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.13/site-packages/sentry_sdk/integrations/threading.py", line 179, in wrapped_fn
    return fn(*args, **kwargs)
  File "/usr/src/supervisor/supervisor/utils/validate.py", line 25, in validate_timezone
    if get_time_zone(timezone) is not None:
       ~~~~~~~~~~~~~^^^^^^^^^^
  File "/usr/src/supervisor/supervisor/utils/dt.py", line 77, in get_time_zone
    return zoneinfo.ZoneInfo(time_zone_str)
           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/zoneinfo/_common.py", line 33, in load_data
    header = _TZifHeader.from_file(fobj)
  File "/usr/local/lib/python3.13/zoneinfo/_common.py", line 151, in from_file
    raise ValueError("Invalid TZif file: magic not found")
ValueError: Invalid TZif file: magic not found
2026-03-07 07:29:08.159 INFO (MainThread) [supervisor.homeassistant.core] Home Assistant Core state changed to APIState(core_state='NOT_RUNNING', offline_db_migration=False)
2026-03-07 07:29:13.172 INFO (MainThread) [supervisor.homeassistant.core] Home Assistant Core state changed to APIState(core_state='RUNNING', offline_db_migration=False)
2026-03-07 07:29:13.173 INFO (MainThread) [supervisor.homeassistant.core] Detect a running Home Assistant instance
2026-03-07 07:29:13.173 INFO (MainThread) [supervisor.homeassistant.core] Successfully started Home Assistant 2026.2.3
2026-03-07 07:29:13.240 INFO (MainThread) [supervisor.docker.manager] Cleanup images: ['ghcr.io/home-assistant/qemux86-64-homeassistant:2026.3.1']

I am having the same issues. I can see the update start and then they never complete and I end up rebooting to get the system running again. This started with another update last month, I can’t remember which one. The progress bar very slowly goes across the screen then it fails, forcing a reboot. It’s almost like there is a network issue but only on their end, all the other updates work. Of course now I have a bunch that won’t load because they require the 2026.3.0 update!

Oh and by the way, welcome to the community. It’s much better here than on Reddit!

1 Like

What time zone are you in? Which one is configured in HomeAssistant? Docker? Is NTP accessible across your network? Are you running a VM or VLAN?

Which OS Ver. Does You Guys Run ?

I run haos inside VM. I make a little research and found that all files in folder /usr/share/zoneinfo/Europe in core and superviser containers have zero length. Same files in haos have correct length.

Just saying, how long did you wait.
I think one of mine took an extended time the other day, wasn’t sure why, but I left it alone for an hour or so and it came back updated.

Yeah me to, i have i.e 1 with OS 16. and CORE 2025.10.2 , And another with OS 17.1 and CORE 2026.3.1 ,The reason i asked “Ver”
EDIT: well 2026.3.1 is actually on a HA-Green

I have 17.1.
I run “ha docker migrate-storage-driver” and after this my issue was resolved.

3 Likes

Same here…

The yusually time out after about an hour…

Sounds simple. Could anything go wrong? If so, would it be fatal?
Any of the other steps suggested in the following be of relevance?

Doubtfully, as this “command” was suggested/recommended in the OS 17.1 Release Note

It say’s “optional”.

Note that Home Assistant OS 17.1 uses Docker Containerd snapshotter by default, optional migration steps for existing installations are available in the 17.0 release notes.

Thanks for the Commend, And Clarification

So these are all solutions if you are using docker, correct? So I am running a standalone mini pc and having the same issues, anyway I can solve that? Just dread doing a complete reinstall to update to the latest version of HA…

Looks like you are having the same issue as I am, I made a post about it as the 17.1 version just seems corrupted or something as it just seems to be stuck in trying to install, failing to extract and trying again being stuck in a loop, I dont even know how to go back to a good version, only been using HA for about 3 weeks after psyching myself up to take the plunge and move over to it.

a requirement seems to be OS 17.1 , also it’s not of much “help” just stating “same here”, it doesn’t tell whether you find the same “error” entries in your RAW-Log files, and it doesn’t tell anything about your system, i.e size of DB etc. etc.
This however sounds like you had issues before, so it might not entirely be depended upon this Release.

This could be “revealed” in a “RAW-Log file” if not a Debug might be needed to further investigate

Which Post ?
You are aware the that “mobile version” showing “snippet” of errors aint of much use ?.
Could you try from a pc/laptop , at home, so your not trying to update OS, or CORE from your Phone-App

This one Corrupt Archive HAOS 17.1 - Installation - Home Assistant Community

I have been using the PC but that is just sat in console and that was the only place i could see whats happening. Ive been trying a complete fresh install with a brand new drive but having no luck on that one either.