Skip to content

Zeroconf.get_service_info seems broken in 0.26.0 #255

@emontnemery

Description

@emontnemery

Several Home Assistant users have reported that cast devices can't be discovered correctly after a recent upgrade which bumps zeroconf from 0.25.1 to 0.26.1: home-assistant/core#35922

According to some testing, the problem appeared in 0.26.0, which adds #239

It seems that the problem is that Zeroconf.get_service_info doesn't return anything useful in 0.26.0+, from the logs it seems that Zeroconf keeps sending queries but does not get or does not accept answers.

Debug logs here:
home-assistant/core#35922 (comment)

For context, this is the code in pychromecast which calls Zeroconf.get_service_info, look for the add_service and service prints in the logs:

    def add_service(self, zconf, typ, name):
        """ Add a service to the collection. """
        service = None
        tries = 0
        _LOGGER.debug("add_service %s, %s", typ, name)
        while service is None and tries < 4:
            try:
                service = zconf.get_service_info(typ, name)
            except IOError:
                # If the zeroconf fails to receive the necessary data we abort
                # adding the service
                break
            tries += 1

        if not service:
            _LOGGER.debug("add_service failed to add %s, %s", typ, name)
            return

@mattsaxon, any idea?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions