diff options
author | vmallika <vmallika@redhat.com> | 2015-06-29 19:12:28 +0530 |
---|---|---|
committer | Raghavendra G <rgowdapp@redhat.com> | 2015-07-07 22:34:55 -0700 |
commit | 3f9dae11173475d759adb16dd64bea9cef0bf1c4 (patch) | |
tree | 8d80f1777f0610fe209b0c8cfdc4eef5d1a610ba /extras/snap_scheduler | |
parent | 36f24f5fc358598b55fb176cefe944ea5160c012 (diff) |
quota/marker: fix mem leak in marker
This is a backport of http://review.gluster.org/#/c/11457/
Problem-1)
Now the marker accounting happens in background,
There is a possibility that before completing
create_xattr_txn another create txn can be initiated
for the same inode.
suppose if few 100 txns are initiated
before completion, this can block all synctask threads
waiting on a lock and this can also consume lot of memory
and can take more time to complete the background accounting
operation.
This patch improves the locking mechanism which
can improve the performance as well reduce memory
consumption
Problem-2)
For every lookup and for all inodes in readdirp
we were initiating a new txn, this can result
in more txn pending in synctask queue and
lead to huge memory consumption. inspect
file/dir should start a txn only if there
is some delta
Problem-3)
When there are multiple write operations on
same inode and all the synctask threads are busy.
As we are checking for updation_status
flag in background, all txn will be move to synctask queue.
This can increase the mem usage.
Only one txn for inode in a queue will be sufficient,
so check and set updation falg before moving txn to
background
> Change-Id: Ic42ce00f0a50ce51c7128ba68a1b6a0699a1cd14
> BUG: 1207735
> Signed-off-by: vmallika <vmallika@redhat.com>
Change-Id: I52a05b99b19b97c79b69671120f53e05481f99cd
BUG: 1229282
Signed-off-by: vmallika <vmallika@redhat.com>
Reviewed-on: http://review.gluster.org/11527
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Tested-by: Raghavendra G <rgowdapp@redhat.com>
Diffstat (limited to 'extras/snap_scheduler')
0 files changed, 0 insertions, 0 deletions