Project

General

Profile

Actions

Bug #36369

closed

kclient: wanted caps takes a long time to release

Added by Xuehan Xu over 5 years ago. Updated over 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
fs
Crash signature (v1):
Crash signature (v2):

Description

In some of our online clusters, some clients hold on to the "Fw" caps for as long as an hour or two before they release it even though they just did some one-time write to a file.

After a series of tests and debugs, we found that this is due to __cap_delay_requeue function unconditionally sets inodes' timeouts "i_hold_caps_min" and "i_hold_caps_max".

Since __cap_delay_requeue can be invoked in ceph_check_ops when there are caps that need to be sent and, yet, are delayed by "i_hold_caps_min" or "i_hold_caps_max", reset those timeouts unconditonally could make "want" caps can't be sent out for an un-predictable long time.

Actions

Also available in: Atom PDF