From 959558452681d4967ff36d061f2d23998feb5711 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 28 May 2008 10:19:08 -0700 Subject: [PATCH] mds: check auth bit in unscatter_autoscattered --- src/mds/Locker.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mds/Locker.cc b/src/mds/Locker.cc index c417c4ffeb8b6..194b0b5b05e53 100644 --- a/src/mds/Locker.cc +++ b/src/mds/Locker.cc @@ -2714,12 +2714,16 @@ void Locker::scatter_unscatter_autoscattered() ScatterLock *lock = autoscattered.front(); // stop? - if (lock->get_state() == LOCK_SCATTER && + if (lock->get_parent()->is_auth() && + lock->get_state() == LOCK_SCATTER && now - lock->get_last_scatter() < 10.0) break; autoscattered.pop_front(); + if (lock->get_parent()->is_auth()) + continue; + if (lock->get_state() == LOCK_SCATTER && lock->get_parent()->is_replicated()) { if (((CInode*)lock->get_parent())->is_frozen() || -- 2.39.5