]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
journal: active and minimum set should always grow
authorJason Dillaman <dillaman@redhat.com>
Wed, 24 Feb 2016 03:07:03 +0000 (22:07 -0500)
committerJason Dillaman <dillaman@redhat.com>
Fri, 26 Feb 2016 16:54:52 +0000 (11:54 -0500)
Prevent async reload from canceling out an in-flight update.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/journal/JournalMetadata.cc

index 19bd8b0c33c9dcf4443af054961daa0da1edf5d6..7c23773859bfe180b3771ab90ba61a2fcebdba4c 100644 (file)
@@ -513,8 +513,8 @@ void JournalMetadata::handle_refresh_complete(C_Refresh *refresh, int r) {
     Client client(m_client_id, bufferlist());
     RegisteredClients::iterator it = refresh->registered_clients.find(client);
     if (it != refresh->registered_clients.end()) {
-      m_minimum_set = refresh->minimum_set;
-      m_active_set = refresh->active_set;
+      m_minimum_set = MAX(m_minimum_set, refresh->minimum_set);
+      m_active_set = MAX(m_active_set, refresh->active_set);
       m_registered_clients = refresh->registered_clients;
       m_client = *it;