[Bugs] [Bug 1176309] New: glfs_h_creat() leaks file descriptors
bugzilla at redhat.com
bugzilla at redhat.com
Sat Dec 20 10:23:15 UTC 2014
https://bugzilla.redhat.com/show_bug.cgi?id=1176309
Bug ID: 1176309
Summary: glfs_h_creat() leaks file descriptors
Product: GlusterFS
Version: 3.6.1
Component: libgfapi
Severity: high
Priority: urgent
Assignee: ndevos at redhat.com
Reporter: ndevos at redhat.com
QA Contact: sdharane at redhat.com
CC: bugs at gluster.org, gluster-bugs at redhat.com
Depends On: 1176242
Blocks: 1163723 (glusterfs-3.6.2)
+++ This bug was initially created as a clone of Bug #1176242 +++
Description of problem:
When running stress and performance tests against nfs-ganesha, the
number of open file descriptors increases continously. If the tests run
long enough, the brick processes will eventually run out of file
descriptors.
Version-Release number of selected component (if applicable):
current master and older versions that have glfs_h_creat()
How reproducible:
100%
Steps to Reproduce:
1. setup nfs-ganesha to export a (single brick) volume
2. create files on an nfs mountpoint
3. check the open file descriptors of the brick process
Actual results:
See the file descriptors of the brick process increase...
Expected results:
Increasing number of descriptors, but see it reduce again too.
Additional info:
This seems to be caused by glfs_h_creat() which allocates a 'struct
glfs_fd', but does not release it. A normal glfs_creat() returns the
file descriptor to the application, whereas glfs_h_creat() returns a
handle (struct glfs_object). The file descriptor associated with the
handle can not be release by glfapi-applications.
--- Additional comment from Anand Avati on 2014-12-19 21:08:06 CET ---
REVIEW: http://review.gluster.org/9318 (gfapi: always close the fd in
glfs_h_creat()) posted (#2) for review on master by Niels de Vos
(ndevos at redhat.com)
--- Additional comment from Anand Avati on 2014-12-20 11:21:01 CET ---
COMMIT: http://review.gluster.org/9318 committed in master by Niels de Vos
(ndevos at redhat.com)
------
commit 0e78a12381e988a06e1d5a2dd592d132e24a4e10
Author: Niels de Vos <ndevos at redhat.com>
Date: Fri Dec 19 18:27:14 2014 +0100
gfapi: always close the fd in glfs_h_creat()
When running stress and performance tests against nfs-ganesha, the
number of open file descriptors increases continously. If the tests run
long enough, the brick processes will eventually run out of file
descriptors.
This seems to be caused by glfs_h_creat() which allocates a 'struct
glfs_fd', but does not release it. A normal glfs_creat() returns the
file descriptor to the application, whereas glfs_h_creat() returns a
handle (struct glfs_object). The file descriptor associated with the
handle can not be release by glfapi-applications.
This fd-leak can be prevented by destroying the 'struct glfs_fd' before
returning the 'struct gfls_object' to the gfapi-application.
Change-Id: I32465077a35cd0449a8e584c53899b32f022e5af
BUG: 1176242
Signed-off-by: Niels de Vos <ndevos at redhat.com>
Reviewed-on: http://review.gluster.org/9318
Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com>
Reviewed-by: Shyamsundar Ranganathan <srangana at redhat.com>
Tested-by: Gluster Build System <jenkins at build.gluster.com>
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1163723
[Bug 1163723] GlusterFS 3.6.2 tracker
https://bugzilla.redhat.com/show_bug.cgi?id=1176242
[Bug 1176242] glfs_h_creat() leaks file descriptors
--
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=Bd7UWhCAjB&a=cc_unsubscribe
More information about the Bugs
mailing list