Whamcloud - gitweb
LU-11227 lod: lod_sync: don't attempt sync to inactive targets 91/32991/4
authorRobin Humble <plaguedbypenguins@gmail.com>
Thu, 9 Aug 2018 05:33:04 +0000 (15:33 +1000)
committerJohn L. Hammond <jhammond@whamcloud.com>
Tue, 11 Sep 2018 20:16:37 +0000 (20:16 +0000)
commit2898c1765adfd6d966be6e5c24511519dede0188
tree8589e179c13fa6bd910e1c9239929820e2a7e0a0
parent00959fcb2a6c239864999c813da0932a3016814f
LU-11227 lod: lod_sync: don't attempt sync to inactive targets

chgrp on a client triggers lod_sync() which in turn loops over OST/MDT
targets with dt_sync(). dt_sync() fails with -ENOTCONN when targets
have been deactivated (ie. set to active=0). The client retries
infinitely causing the client process to hang and considerably MDS
network traffic, load, and disk i/o.

the fix is to not attempt dt_sync() to ost/mdt targets that have been
deactivated and also (because of possible races) to ignore connection
errors.

tested with Lustre 2.10.4.

Signed-off-by: Robin Humble <plaguedbypenguins@gmail.com>
Change-Id: I617509cf7944541489f4fd9762c233b771132165
Reviewed-on: https://review.whamcloud.com/32991
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
lustre/lod/lod_dev.c