LU-16356 hsm: store crh in rhashtable instead of list
Store coordinator restore handles in rhashtable instead of list.
Search in a list with above a million entries takes too much time
causing to wait a lot of tasks due to contention on cdt_restore_lock.
As cdt_restore_lock is not needed anymore to protect
cdt_restore_handle_list, this patch also solves the problem with
parallel restore requests(LU-15132).
Add regression test sanity-hsm 409b.
Fixes:
66b3e74bc ("LU-15132 hsm: Protect against parallel HSM restore requests")
Test-Parameters: testlist=sanity-hsm env=ONLY=409b,ONLY_REPEAT=20
HPE-bug-id: LUS-11055
Change-Id: I3bb8788f6a0ce4c3fe4a3be85804df1c6845c313
Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Signed-off-by: Etienne AUJAMES <eaujames@ddn.com>
Signed-off-by: Nikitas Angelinas <nikitas.angelinas@hpe.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/49284
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>