How should nova-compute behave when it failed to connect to the libvirtd socket?
There is always a trade-off between failing fast and retrying. Currently, the implemented way is to fail fast, thus, you see that the affected service automatically disables itself. So this is expected behavior.
If we were to fix this, I'd strongly suggest doing that by the means of systemd (i.e. bind a socket in systemd) rather than adding retries to nova-compute.
How should nova-compute behave when it failed to connect to the libvirtd socket?
There is always a trade-off between failing fast and retrying. Currently, the implemented way is to fail fast, thus, you see that the affected service automatically disables itself. So this is expected behavior.
If we were to fix this, I'd strongly suggest doing that by the means of systemd (i.e. bind a socket in systemd) rather than adding retries to nova-compute.