Skip to content

Slow async_setup_entry (~90s) for second config entry on multi-device account #53

Description

@t0mr0zier

Summary

With two integration entries configured against the same Navien account (one per physical unit), the second config entry consistently takes 70–90 seconds to complete async_setup_entry. The first entry completes in well under that. No exception is raised; HA's bootstrap simply logs "Waiting for integrations to complete setup" until the slow entry finally loads. Once setup completes, all entities populate and update
correctly — this appears to be a startup-time issue only.

Environment

  • Home Assistant Core: 2026.4.4
  • Install method: Home Assistant OS
  • Integration version: 1.0.1
  • Navien units on the account: 2 (configured as separate config entries)
  • Both units are instantly online in the Navien NaviLink mobile app during the slow HA setup, so the cloud / units themselves appear responsive.

Steps to reproduce

  1. Configure two integration entries on the same Navien account, one per physical unit.
  2. Restart Home Assistant.
  3. Open Settings → Devices & Services → Navien NaviLink.
  4. Observe one entry loads quickly; the other shows the dim spinner "Initializing" for 70–90 seconds before completing.

The same ~90-second delay applies to manually reloading the slow entry (3-dot menu → Reload) without restarting HA.

Logs

No exceptions or warnings specific to navien_water_heater appear during the wait. The only relevant log entries are HA's bootstrap "waiting" messages:

2026-05-02 08:39:49.223 WARNING (MainThread) [homeassistant.bootstrap]
Waiting for integrations to complete setup:
{('navien_water_heater', '01KP95P41ZKZJ95WXXZ16W468E'): 670336.117405715,
('reolink', '01KC9ZHVZ2GQ00T0952F4NV052'): 670357.025330631}
2026-05-02 08:40:49.295 WARNING (MainThread) [homeassistant.bootstrap]
Waiting for integrations to complete setup:
{('navien_water_heater', '01KP95P41ZKZJ95WXXZ16W468E'): 670336.117405715}

The second config entry (01KP95P41ZKZJ95WXXZ16W468E) is consistently
the one that hangs. Reolink in the same boot cleared during the gap
between the two messages, while Navien continued waiting.

What I've tried

  • Restarted HA multiple times → consistently the same behavior.
  • Reload the slow entry from the integrations UI → same ~90s delay.
  • Confirmed via the Navien NaviLink mobile app that the unit is online and responsive throughout the wait.
  • Increased HA debug logging on homeassistant.components.command_line and other suspects — nothing related to navien surfaced.

Hypothesis

It looks like setup of the second config entry serializes behind the first — possibly due to shared session/auth state being acquired sequentially per entry. Curious whether the device-info and sensor enumeration could be parallelized or the auth handshake reused across
entries on the same account.

Offer

Happy to capture additional logs (debug level on navien_water_heater specifically) or test a candidate fix on this account if it would help.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions