Bug 1489378 - [RFE]nfs-ganesha: Support xreaddirplus in FSAL_GLUSTER
Summary: [RFE]nfs-ganesha: Support xreaddirplus in FSAL_GLUSTER
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Gluster Storage
Classification: Red Hat
Component: nfs-ganesha
Version: rhgs-3.3
Hardware: All
OS: All
unspecified
high
Target Milestone: ---
: RHGS 3.4.0
Assignee: Soumya Koduri
QA Contact: Karan Sandha
URL:
Whiteboard:
Depends On:
Blocks: 1503132
TreeView+ depends on / blocked
 
Reported: 2017-09-07 10:12 UTC by Soumya Koduri
Modified: 2018-09-24 05:39 UTC (History)
9 users (show)

Fixed In Version: nfs-ganesha-2.5.4-1
Doc Type: Enhancement
Doc Text:
With this release, this option is now turned on by default. When this option is turned off, NFS falls back to standardreaddir instead of readdirp. Turning this off would result in more lookup and stat requests being sent from the client which may impact performance.
Clone Of:
Environment:
Last Closed: 2018-09-04 06:53:36 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2018:2610 None None None 2018-09-04 06:54:41 UTC

Description Soumya Koduri 2017-09-07 10:12:37 UTC
Description of problem:

Any application using glfs handles (like NFS-Ganesha) may need to do lookup on each dirent returned by readdir/readdirp operation to create handles. But since the lookup in glusterfs is very costly operation (as need to be sent to all replica bricks), as the directory gets larger or the replica count increases, the time taken for single readdir operation to complete can take hours of time.

To avoid that we need an extended readdirp API which can return handles along with dirent stat as part of its reply.

With GlusterFS 3.11, we have support for glfs_xreaddirplus() API which returns stat, handles along with dirent entries there by reducing nfs readdir operation latency. This bug is to track that for FSAL_GLUSTER in nfs-ganesha

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


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 2 Soumya Koduri 2017-09-07 10:14:35 UTC
Upstream patches to be cherry-picked :

https://review.gerrithub.io/298505
https://review.gerrithub.io/374748

Comment 8 Kaleb KEITHLEY 2018-08-31 14:10:09 UTC
From IRC:

  With this release this option  is now turned on by default. When this 
  option is turned off, NFS falls back to standardreaddir instead of readdirp. 
  Turning this off would result in more lookup and stat requests being sent
  from the client which may impact performance.


Above looks good to me.

Comment 9 Jiffin 2018-09-01 07:07:13 UTC
(In reply to Kaleb KEITHLEY from comment #8)
> From IRC:
> 
>   With this release this option  is now turned on by default. When this 
>   option is turned off, NFS falls back to standardreaddir instead of
> readdirp. 
>   Turning this off would result in more lookup and stat requests being sent
>   from the client which may impact performance.
> 
> 
> Above looks good to me.

Actually the option to turn it off or on is a compiler option IMO. So user/customer cannot consume that option. It is better to not mention it in doc text.

Comment 11 errata-xmlrpc 2018-09-04 06:53:36 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-2018:2610


Note You need to log in before you can comment on or make changes to this bug.