Whamcloud - gitweb
LU-15935 target: keep track of multirpc slots in last_rcvd 82/48082/11
authorEtienne AUJAMES <etienne.aujames@cea.fr>
Fri, 29 Jul 2022 12:35:33 +0000 (14:35 +0200)
committerOleg Drokin <green@whamcloud.com>
Wed, 2 Nov 2022 07:09:15 +0000 (07:09 +0000)
commit1a79d395dd61ea2e21598bfaa5b39375e64ec22c
tree2369528190f4730c3ae95fdef0caab35760484ba
parent62fd8f9b498ae3d16704a1a2b4fb47f5e1f46f58
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.

Test-Parameters: testlist=replay-dual env=ONLY=33,ONLY_REPEAT=30
Signed-off-by: Etienne AUJAMES <eaujames@ddn.com>
Change-Id: I70791c9dcb7cc77f018b9e5c95568598d54f0322
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/48082
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
lustre/include/lu_target.h
lustre/target/tgt_lastrcvd.c
lustre/tests/replay-dual.sh