Whamcloud - gitweb
LU-15935 target: keep track of multirpc slots in last_rcvd
authorEtienne AUJAMES <etienne.aujames@cea.fr>
Fri, 29 Jul 2022 12:35:33 +0000 (14:35 +0200)
committerAndreas Dilger <adilger@whamcloud.com>
Fri, 11 Nov 2022 09:38:34 +0000 (09:38 +0000)
commit9b585acb4a68a771a90b396995b0e1340689fb39
tree19ca03df03730fadb5f6b5247221364c51375d1a
parent4ba95c0a6d7f9c0acecbcc776e252de6478c2875
LU-15935 target: keep track of multirpc slots in last_rcvd

OBD_INCOMPAT_MULTI_RPCS is cleared by tgt_boot_epoch_update() if the
recovery is aborted. This supposes that all the clients are evicted
but that is not true. Some clients could have successfully finished
their recovery. In that case, those clients will keep their last_rcvd
slot.

This patch modifies lut_num_client to keep track of multirpc
slots in last_rcvd.
For now the counter is use only by tgt_fini() to clear
OBD_INCOMPAT_MULTI_RPCS. So we can expand this use case for
tgt_boot_epoch_update().

Add replay-dual test_33.

Lustre-change: https://review.whamcloud.com/48082
Lustre-commit: 1a79d395dd61ea2e21598bfaa5b39375e64ec22c

Test-Parameters: testlist=replay-dual env=ONLY=33,ONLY_REPEAT=30
Signed-off-by: Xing Huang <hxing@ddn.com>
Change-Id: I70791c9dcb7cc77f018b9e5c95568598d54f0322
Reviewed-on: https://review.whamcloud.com/c/ex/lustre-release/+/49040
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lustre/include/lu_target.h
lustre/target/tgt_lastrcvd.c
lustre/tests/replay-dual.sh