Project

General

Profile

Bug #36369

kclient: wanted caps takes a long time to release

Added by Xuehan Xu 2 months ago. Updated 2 months ago.

Status:
New
Priority:
Normal
Assignee:
Category:
-
Target version:
Start date:
10/10/2018
Due date:
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
fs
Pull request ID:

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.

History

#1 Updated by Xuehan Xu 2 months ago

Fixing patch: see "[PATCH] ceph: set timeout conditionally in __cap_delay_requeue" in ceph-devel mailing list

#2 Updated by Patrick Donnelly 2 months ago

  • Assignee set to Xuehan Xu
  • Source set to Community (dev)

#3 Updated by Patrick Donnelly 2 months ago

  • Project changed from fs to Linux kernel client
  • Category deleted (Performance/Resource Usage)

Also available in: Atom PDF