[389-commits] Branch '389-ds-base-1.2.11' - 2 commits - ldap/servers VERSION.sh

Mark Reynolds mreynolds at fedoraproject.org
Wed Aug 15 20:52:31 UTC 2012


 VERSION.sh                                              |    2 +-
 ldap/servers/plugins/replication/repl5_replica_config.c |    9 +++++++--
 ldap/servers/plugins/replication/repl_extop.c           |    2 +-
 3 files changed, 9 insertions(+), 4 deletions(-)

New commits:
commit db6b3544755a109bed20a9c680f00ff777dcd42a
Author: Mark Reynolds <mreynolds at redhat.com>
Date:   Wed Aug 15 11:27:47 2012 -0400

    bumped version to 1.2.11.10

diff --git a/VERSION.sh b/VERSION.sh
index e96107e..e724679 100644
--- a/VERSION.sh
+++ b/VERSION.sh
@@ -10,7 +10,7 @@ vendor="389 Project"
 # PACKAGE_VERSION is constructed from these
 VERSION_MAJOR=1
 VERSION_MINOR=2
-VERSION_MAINT=11.9
+VERSION_MAINT=11.10
 # if this is a PRERELEASE, set VERSION_PREREL
 # otherwise, comment it out
 # be sure to include the dot prefix in the prerel


commit c40902c872fab29922d8dca8f32dc18dabc7d936
Author: Mark Reynolds <mreynolds at redhat.com>
Date:   Wed Aug 15 10:54:00 2012 -0400

    Ticket 403 - CLEANALLRUV revisions
    
    Addressed two issues:
    
    [1]  Need to handle case where rid was already cleaned
    [2]  Needed to improve closing sequence when repl agmts are not present
    
    Reviewed by richm and noriko(Thanks!)
    
    https://fedorahosted.org/389/ticket/403

diff --git a/ldap/servers/plugins/replication/repl5_replica_config.c b/ldap/servers/plugins/replication/repl5_replica_config.c
index a03740b..b408809 100644
--- a/ldap/servers/plugins/replication/repl5_replica_config.c
+++ b/ldap/servers/plugins/replication/repl5_replica_config.c
@@ -1451,6 +1451,7 @@ replica_cleanallruv_thread(void *arg)
     int found_dirty_rid = 1;
     int agmt_not_notified = 1;
     int interval = 10;
+    int aborted = 0;
     int free_obj = 0;
     int rc = 0;
 
@@ -1491,7 +1492,7 @@ replica_cleanallruv_thread(void *arg)
     ruv_obj = replica_get_ruv(data->replica);
     ruv = object_get_data (ruv_obj);
     while(data->maxcsn && !is_task_aborted(data->rid) && !is_cleaned_rid(data->rid) && !slapi_is_shutting_down()){
-        if(csn_get_replicaid(data->maxcsn) == 0 || ruv_covers_csn(ruv,data->maxcsn)){
+        if(csn_get_replicaid(data->maxcsn) == 0 || ruv_covers_csn_strict(ruv,data->maxcsn)){
             /* We are caught up, now we can clean the ruv's */
             break;
         }
@@ -1504,6 +1505,7 @@ replica_cleanallruv_thread(void *arg)
     cleanruv_log(data->task, CLEANALLRUV_ID,"Waiting for all the replicas to be online...");
     if(check_agmts_are_alive(data->replica, data->rid, data->task)){
         /* error, aborted or shutdown */
+        aborted = 1;
         goto done;
     }
     /*
@@ -1512,6 +1514,7 @@ replica_cleanallruv_thread(void *arg)
     cleanruv_log(data->task, CLEANALLRUV_ID,"Waiting for all the replicas to receive all the deleted replica updates...");
     if(check_agmts_are_caught_up(data->replica, data->rid, csnstr, data->task)){
         /* error, aborted or shutdown */
+        aborted = 1;
         goto done;
     }
     /*
@@ -1545,6 +1548,7 @@ replica_cleanallruv_thread(void *arg)
         }
 
         if(is_task_aborted(data->rid)){
+            aborted = 1;
             goto done;
         }
         if(agmt_not_notified == 0){
@@ -1597,6 +1601,7 @@ replica_cleanallruv_thread(void *arg)
         }
         /* If the task is abort or everyone is cleaned, break out */
         if(is_task_aborted(data->rid)){
+            aborted = 1;
             goto done;
         }
         if(found_dirty_rid == 0){
@@ -1622,7 +1627,7 @@ done:
     /*
      *  If the replicas are cleaned, release the rid, and trim the changelog
      */
-    if(!found_dirty_rid){
+    if(!aborted){
         trigger_cl_trimming(data->rid);
         delete_cleaned_rid(data->replica, data->rid, data->maxcsn);
         cleanruv_log(data->task, CLEANALLRUV_ID, "Successfully cleaned rid(%d).", data->rid);
diff --git a/ldap/servers/plugins/replication/repl_extop.c b/ldap/servers/plugins/replication/repl_extop.c
index db94ba7..ecf1f93 100644
--- a/ldap/servers/plugins/replication/repl_extop.c
+++ b/ldap/servers/plugins/replication/repl_extop.c
@@ -1618,7 +1618,7 @@ multimaster_extop_cleanruv(Slapi_PBlock *pb)
 				break;
 			}
 			slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name, "cleanAllRUV_task: checking if we're caught up...\n");
-			if(ruv_covers_csn(ruv,maxcsn) || csn_get_replicaid(maxcsn) == 0){
+			if(ruv_covers_csn_strict(ruv,maxcsn) || csn_get_replicaid(maxcsn) == 0){
 				/* We are caught up */
 				break;
 			} else {




More information about the 389-commits mailing list