Bug #8962
Updated by Sage Weil over 9 years ago
several instances where the mds tries to revoke a cap (Ls and Fs have been observed so far) and the client doesn't release. <pre> 2014-07-29 14:16:16.924012 7f0dcaa12700 7 mds.0.locker wrlock_start waiting on (inest lock->sync w=1 dirty) on [inode 600 [...2,head] ~mds0/stray0/ auth v3610592 ap=21+1 f(v14 m2014-07-29 00:33:41.686216 108=99+9) n(v36 rc2014-07-29 00:33:41.686216 b181439683 a1 109=99+10) (inest lock->sync w=1 dirty) (ifile lock w=20) (iversion lock) | dirtyscattered=1 lock=2 dirfrag=1 stickydirs=1 stray=1 dirtyrstat=0 dirtyparent=0 dirty=0 waiter=1 authpin=1 0x33ee300] 2014-07-29 14:16:16.924023 7f0dcaa12700 10 mds.0.cache.ino(600) add_waiter tag 400000000000 0x7990b4c0 !ambig 1 !frozen 1 !freezing 1 2014-07-29 14:16:16.924025 7f0dcaa12700 15 mds.0.cache.ino(600) taking waiter here 2014-07-29 14:16:16.924027 7f0dcaa12700 10 mds.0.locker nudge_log (inest lock->sync w=1 dirty) on [inode 600 [...2,head] ~mds0/stray0/ auth v3610592 ap=21+1 f(v14 m2014-07-29 00:33:41.686216 108=99+9) n(v36 rc2014-07-29 00:33:41.686216 b181439683 a1 109=99+10) (inest lock->sync w=1 dirty) (ifile lock w=20) (iversion lock) | dirtyscattered=1 lock=2 dirfrag=1 stickydirs=1 stray=1 dirtyrstat=0 dirtyparent=0 dirty=0 waiter=1 authpin=1 0x33ee300] </pre> this causes requests to hang. is from hours earlier: restarting the mds clears it up. <pre> [inode 600 [...2,head] ~mds0/stray0/ auth v3610592 ap=20+1 f(v14 m2014-07-29 00:33:41.686216 108=99+9) n(v36 rc2014-07-29 00:33:41.686216 b181439683 a1 109=99+10) (inest lock->sync w=1 dirty) (ifile lock w=19) (iversion lock) | dirtyscattered=1 lock=2 dirfrag=1 stickydirs=1 stray=1 dirtyrstat=0 dirtyparent=0 dirty=0 waiter=1 authpin=1 0x33ee300] </pre> so someone leaked a lock, not sure who.