Whamcloud - gitweb
LU-653 Ignore last transno from clients with no outstanding transactions
authorOleg Drokin <green@whamcloud.com>
Thu, 1 Sep 2011 20:19:11 +0000 (16:19 -0400)
committerOleg Drokin <green@whamcloud.com>
Thu, 15 Sep 2011 03:40:02 +0000 (23:40 -0400)
Clients that did not have any unreplied transactions should not
artificially reduce next_recovery_transno since those transactions are
never coming anyway and would just elay all replay activity
until all clients are reconnected.

Change-Id: Iafa32b315211ada93838f4b16fe0f2c800d619c4
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/1318
Tested-by: Hudson
Reviewed-by: Mikhail Pershin <tappro@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
lustre/ldlm/ldlm_lib.c

index 9d063d8..db02383 100644 (file)
@@ -1014,7 +1014,8 @@ dont_check_exports:
                         CWARN("Connect with zero transno!\n");
 
                 if ((lustre_msg_get_op_flags(req->rq_reqmsg) & MSG_CONNECT_TRANSNO)
-                     && data->ocd_transno < target->obd_next_recovery_transno)
+                     && data->ocd_transno < target->obd_next_recovery_transno &&
+                     data->ocd_transno > target->obd_last_committed)
                         target->obd_next_recovery_transno = data->ocd_transno;
                 target->obd_connected_clients++;
                 cfs_atomic_inc(&target->obd_req_replay_clients);