ConfD User Community

Error: confd Namespaces differ between master and slave

Hi,

I’m trying to upgrade from version A to B. where we have some changes in yang file.
as per confd documentation i updated/added the revision numbers and performed a upgrade.
it is basically a HA setup. two devices. Active and standby … when i upgrade the standby node with newer version of yang model. Below Error log appears in the Active node which is having older version. is there i’m missing anything

confd - devel.log

15-Nov-2019::10:04:48.065 hostname confd[1661]: confd Namespaces differ between master and slave: http://xxxxxx/xxx/xx/config, http://www.xyz.com/xxx/xxx/xxx-management,

Note: several such messages are getting populated in older version Active node during sync.

In a HA setup, the master/active and all slave/standby nodes must have exactly the same set of fxs files loaded. It sounds like you are doing the upgrade by restarting the standby ConfD with the new set of fxs files, while the active ConfD is still running with the old set - this is fine per se, but you can’t at that point tell the standby to connect to the active via confd_ha_beslave() - it will result in errors like the one you show being logged by the active, while confd_ha_beslave() fails with this confd_errno value (from confd_lib_lib(3)):

    CONFD_ERR_HA_BADFXS (27)
        A remote HA node had a different set of fxs files compared to us.
        It could also be that the set is the same, but the version of some
        fxs file is different.

Of course your HAFW “ought to” have detected this.

The section Upgrade and HA in the In-service Data Model Upgrade chapter in the User Guide describes how to do a “rolling” upgrade in a HA setup. While the description is primarily targeted for the In-Service upgrade case (where the upgrade will fail if the procedure isn’t followed), the same general principle applies when upgrading via ConfD restart, as pointed out by the last paragraph in that section.