Whamcloud - gitweb
LU-16830 lod: improve rr allocation
Roundrobin allocation uses atomic_inc() % ost_count for
generation OST index. When some OSTs are unavailable and
many threads make object creation, it could happen that
OST idx is the same for all attempts. For example with
4 OSTs configuration when 2 OSTs do faiover, estimation
of probability is 0.5^12=0.024%. The result is ENOSPC for
user application.
Let's try one by one OSTs for a last speed loop.
HPE-bug-id: LUS-11265
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I325cf4ad706c9b0df64cf53792e77c1fad6f7739
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/50996
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Sergey Cheremencev <scherementsev@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>