Bug 1485836

Summary: [RFE]nfs-ganesha: optimize FSAL_GLUSTER upcall mechanism
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Soumya Koduri <skoduri>
Component: nfs-ganeshaAssignee: Soumya Koduri <skoduri>
Status: CLOSED ERRATA QA Contact: Manisha Saini <msaini>
Severity: medium Docs Contact:
Priority: unspecified    
Version: rhgs-3.3CC: bkunal, jthottan, lbailey, mbenjamin, pasik, rcyriac, rhinduja, rhs-bugs, storage-qa-internal
Target Milestone: ---Keywords: ZStream
Target Release: RHGS 3.5.0   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: nfs-ganesha-2.7.3-3 Doc Type: Enhancement
Doc Text:
NFS-Ganesha now receives the upcall notifications needed to maintain active-active high availability configurations via asynchronous callbacks, which avoids the need for continuous polling and reduces CPU and memory usage.
Story Points: ---
Clone Of:
: 1497139 1695072 (view as bug list) Environment:
Last Closed: 2019-10-30 12:15:39 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1497139    
Bug Blocks: 1481040, 1482909, 1657798, 1695072, 1696803    

Description Soumya Koduri 2017-08-28 08:32:37 UTC
Description of problem:

Currently, in a multi-clustered nfs-ganesha environment, to keep ganesha md-cache of all the servers in sync, we spawn a new thread (fsal_up) for each volume exported which continuously polls for any upcalls sent by backend glusterfs server. These threads are not effective and may end up consuming lot of CPU depending on no. of volumes exported.

But with bug1482909, if we decide to use gluserfs md-cache instead of ganesha md-cache, we no longer need upcall threads. This bug to make those threads configurable so that they can be disabled when needed.

Few things to note:
1) This new option shall be part of FSAL {name = Gluster }  block.
2) In case if there are multiple shares exporting sub-dir of the same volume and even if one of those export block has this option turned on, upcall thread shall be spawned for that volume.
3) any change in value of this new option shall require re-export of the shares(/volume).

Version-Release number of selected component (if applicable):
3.3

How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 6 Soumya Koduri 2017-09-29 09:49:05 UTC
Bug1497139 is filed to track changes needed in gluster sources .

Comment 19 errata-xmlrpc 2019-10-30 12:15:39 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2019:3252