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 #1

Updated by Xuehan Xu over 5 years ago

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

Actions #2

Updated by Patrick Donnelly over 5 years ago

  • Assignee set to Xuehan Xu
  • Source set to Community (dev)
Actions #3

Updated by Patrick Donnelly over 5 years ago

  • Project changed from CephFS to Linux kernel client
  • Category deleted (Performance/Resource Usage)
Actions #4

Updated by Zheng Yan over 5 years ago

  • Status changed from New to Resolved

commit 668028844174aa7069da1f8ea89a5dbc93e86216

Actions

Also available in: Atom PDF