summaryrefslogtreecommitdiffstats
path: root/xlators/features/marker/src/marker-quota.c
Commit message (Collapse)AuthorAgeFilesLines
* features/marker: avoid race conditions in marker-quota and avoid memory ↵v3.2.3qa4Raghavendra Bhat2011-08-201-46/+190
| | | | | | | | | | corruption Change-Id: I9e69c7fcf47d611ea960f9969bbc3fb96d93d58e BUG: 3389 Reviewed-on: http://review.gluster.com/278 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* features/marker: Correct behavior of local_ref/unrefVijay Bellur2011-08-201-6/+2
| | | | | | | | Change-Id: I8266754d4b53b525b13fed2383cf95d77bab47ba BUG: 3429 Reviewed-on: http://review.gluster.com/252 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* features/marker: do not unref the marker local twice to avoid memory corruptionRaghavendra Bhat2011-08-171-6/+15
| | | | | | | | Change-Id: I71bc8a477155cff62c3218fee285a22a44aa54ba BUG: 3385 Reviewed-on: http://review.gluster.com/241 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Change Copyright current yearPranith Kumar K2011-08-101-1/+1
| | | | | | | | Change-Id: Id1f1a91cf15d933d5621a0073ddaebe02df0f159 BUG: 3348 Reviewed-on: http://review.gluster.com/198 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker-quota: Performance improvement.Junaid2011-08-051-11/+120
| | | | | | | | | | | With this patch new transactions will not be triggered if an updation is already in progress on that inode. Change-Id: I6477444ac69071b73b509ae670c83f301bb19bce BUG: 2988 Reviewed-on: http://review.gluster.com/169 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Raghavendra G <raghavendra@gluster.com>
* features/marker-quota: Remove unused variable volname.Junaid2011-08-031-2/+0
| | | | | | | Change-Id: Id0ad3b9c00ab86baec7311998194b777948a5869 Reviewed-on: http://review.gluster.com/153 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker: log failures due to file not being presentRaghavendra G2011-08-031-33/+77
| | | | | | | | | | during quota updation transaction in DEBUG. Change-Id: I483caadbfd77d3830b1ea930a31eedddd0808fca BUG: 3143 Reviewed-on: http://review.gluster.com/42 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker-quota: Fix some random memory leaks.Junaid2011-07-281-11/+8
| | | | | | | | | Change-Id: I1b01adf1d0ecf494f960d125f2bdcc9c10137115 BUG: 3169 Reviewed-on: http://review.gluster.com/73 Tested-by: Gluster Build System <jenkins@build.gluster.com> Tested-by: Raghavendra G <raghavendra@gluster.com> Reviewed-by: Raghavendra G <raghavendra@gluster.com>
* features/marker: fix race-conditions, memory corruptions and fd-leaks.Raghavendra G2011-07-201-194/+415
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - remove xattrs from newpath after rename is complete. - hold inodelk on both parents (if they are different) before doing rename and gather contribution values of oldpath and newpath to their parents while still holding the locks. Use these contribution values to reduce parent sizes. - performance optimization: abort updation process if delta is zero. - libglusterfs/call-stub: Allow unwinding of frames for rename during call_resume_unwind. - fixes in dirty inode healing codepath: - fix fd-leak of fd opened on the directory. - don't add (instead just assign) next offset at which readdir has to be sent to local->d_off. - assign to local->d_off before winding lookup call to get child contribution. - use mutexes while accessing contribution values stored in inode context. - use contribution values from backend instead of in-memory while reducing parent sizes during rename - wipe parent_loc in marker_local_unref. - check for refcount being zero holding lock in quota_local_unref. - hold parent inodelk during creation of xattrs on directory. - use contribution value to reduce parent's size, if the value to be subtracted is not passed as argument to reduce_parent_size. - skip contribution creation on root. Change-Id: I97a9ac7efc5cf82abd3837fa6f9766c35676a908 BUG: 2697 Signed-off-by: Junaid <junaid@gluster.com> Reviewed-on: http://review.gluster.com/31 Tested-by: Gluster Build System <jenkins@build.gluster.com>
* features/marker-quota: call stack destroy when hardlink count is not greater 1.Junaid2011-07-011-0/+6
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2473 (Support for volume and directory level quota) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2473
* features/marker-quota: handle overflow of counter used to set ↵Raghavendra G2011-04-211-11/+36
| | | | | | | | | | frame->root->lk_owner. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2804 (Occasional log messages seen indicating failure of inodelk) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2804
* features/marker-quota: Add the disk space used to parent sizes during ↵Raghavendra G2011-04-211-1/+1
| | | | | | | | | | creation of new-files or symlinks. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2649 (Quota: size field is not getting updated properly) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2649
* features/marker: reduce the size corresponding to destination file if it is ↵Raghavendra G2011-04-211-5/+2
| | | | | | | | | | already present from parent directories. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2697 (Quota: add-brick creates the size go awkward, though it was perfect earlier) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2697
* features/marker-quota: initialize dentry_child_count to total number of ↵Raghavendra G2011-04-211-6/+17
| | | | | | | | | | children a directory has in a single go. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2809 ([e89f2a1f5daf1513c533a47b90aec8f90702d09f]: glusterfsd crashed in quota_dirty_inode_readdir) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2809
* marker/quota: use correct byte ordering when updating parent's size.Raghavendra G2011-04-161-1/+1
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2649 (Quota: size field is not getting updated properly) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2649
* marker: avoid memleak by unrefing dict, fd and localRaghavendra Bhat2011-04-161-0/+7
| | | | | | | | Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2784 ([glusterfs-3.2.0qa13]: memleak in marker) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2784
* features/marker-quota: fixes in self-healing of dirty inode code path.Raghavendra G2011-04-161-2/+2
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2649 (Quota: size field is not getting updated properly) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2649
* features/marker-quota: Use the actual disk-space consumed instead of ia_size ↵Raghavendra G2011-04-151-3/+3
| | | | | | | | | | returned in iatt for calculation of sizes. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2760 (Quota: stripe volume not showing the quota size properly) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2760
* features/marker: fix the excessive logs in markerAmar Tumballi2011-04-141-13/+19
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2754 ([glusterfs-3.2.0qa11]: excessive logging in marker) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2754
* features/marker: Call update txn when the directory size and its ↵Junaid2011-04-131-1/+8
| | | | | | | | | | contribution are not same. Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2473 (Support for volume and directory level quota) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2473
* features/marker: Adding NULL checks.Junaid2011-04-121-19/+21
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2473 (Support for volume and directory level quota) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2473
* marker/quota: use correct byte order while storing xattr values in backend.Raghavendra G2011-04-101-1/+1
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2604 (Quota: crossing the set limit) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2604
* features/marker: Perform quota updation on rmdir and unlink by holding ↵Junaid2011-04-071-30/+134
| | | | | | | | | | inodelk on parent. Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 2664 (Quota: recreating the volume on same bricks shows similar info as for earlier one using "list") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2664
* features/marker: Check for NULL before dereferencing pointers stored in local.Junaid2011-04-071-2/+5
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 2607 (Fileop fails when quota is enabled) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2607
* features/marker, cli: use appropriate conversion specifiers.Raghavendra G2011-04-061-5/+8
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 2649 (Quota: size field is not getting updated properly) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2649
* features/marker: Fix memory corruption.Junaid2011-03-311-12/+10
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2629 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2629
* return after stack winding instead of destroying the frameMohammed Junaid Ahmed2011-03-301-6/+7
| | | | | | | | | Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2624 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2624
* assign local to frame->local before checking for error conditionsRaghavendra Bhat2011-03-301-2/+2
| | | | | | | | Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2617 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2617
* features/marker: Handle fop's gracefully when none of the feaures are enabled.Junaid2011-03-261-36/+23
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2529 (Starting Gsync causes ENOTCONN to glusterfs client) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2529
* features/marker: QUOTA related changes in marker translator.Mohammed Junaid Ahmed2011-03-161-0/+1815
Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2473 (Support for volume and directory level quota) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2473