diff --git a/src/atframe/etcdcli/etcd_discovery.cpp b/src/atframe/etcdcli/etcd_discovery.cpp index cb939e0..54b97f3 100644 --- a/src/atframe/etcdcli/etcd_discovery.cpp +++ b/src/atframe/etcdcli/etcd_discovery.cpp @@ -186,11 +186,15 @@ LIBATAPP_MACRO_API void etcd_discovery_node::copy_from(const atapp::protocol::at if (version.create_revision > node_version_.create_revision) { node_version_.create_revision = version.create_revision; + node_version_.version = version.version; } + if (version.modify_revision > node_version_.modify_revision) { node_version_.modify_revision = version.modify_revision; node_version_.version = version.version; - } else if (version.version > node_version_.version) { + } + + if (version.version > node_version_.version) { node_version_.version = version.version; } } @@ -198,11 +202,15 @@ LIBATAPP_MACRO_API void etcd_discovery_node::copy_from(const atapp::protocol::at LIBATAPP_MACRO_API void etcd_discovery_node::update_version(const node_version &version) { if (version.create_revision > node_version_.create_revision) { node_version_.create_revision = version.create_revision; + node_version_.version = version.version; } + if (version.modify_revision > node_version_.modify_revision) { node_version_.modify_revision = version.modify_revision; node_version_.version = version.version; - } else if (version.version > node_version_.version) { + } + + if (version.version > node_version_.version) { node_version_.version = version.version; } }