Back to bug 998893

Who When What Removed Added
Raghavendra G 2013-08-22 13:18:00 UTC Status NEW ASSIGNED
CC rgowdapp
Assignee amarts rgowdapp
Raghavendra G 2013-09-13 06:07:31 UTC Status ASSIGNED ON_QA
Raghavendra G 2013-09-16 11:12:22 UTC Status ON_QA ASSIGNED
Flags needinfo?
Vivek Agarwal 2013-09-19 09:54:39 UTC Assignee rgowdapp rhs-bugs
Sayan Saha 2013-09-20 13:33:02 UTC CC ssaha
Flags needinfo?
Dustin Black 2013-09-20 16:28:38 UTC Comment 1 is private 1 0
CC dblack
Scott Haines 2013-09-23 20:07:12 UTC Keywords ZStream
CC shaines
krishnan parthasarathi 2013-09-24 02:37:47 UTC CC kparthas
Assignee rhs-bugs rgowdapp
Sudhir D 2013-09-24 05:44:02 UTC QA Contact sdharane saujain
Raghavendra G 2013-09-26 03:19:01 UTC Blocks 1012216
Raghavendra G 2013-10-04 10:05:46 UTC Status ASSIGNED POST
Sudhir D 2013-10-08 08:57:18 UTC CC sdharane
Vivek Agarwal 2013-10-22 15:56:48 UTC Status POST ON_QA
Raghavendra G 2013-10-23 10:42:36 UTC Doc Text Cause:

1. If the application is doing writes at size x and available space before hitting quota limit is y and if (x > y), we used to fail the entire write. Because of this y bytes of storage was always available, since no writes were allowed to pass. However, create was allowed by quota since space consumed for creating a directory entry was assumed to be less than y bytes.

2. Disk space consumed by directories to store directory entries was not accounted.

Consequence:
Because of the causes stated above, if the application is trying to create non-empty files with write sizes as explained above, we would end up with zero byte sized files (since one was able to create files but subsequent writes to it will fail with Disk quota exceeded errors).


Fix:
1. Allow partial writes. Once we cross quota limits (limit reaching because of partial writes), even creates will fail.

2. Account space consumed for storing directory entries too.

Result:
Vivek Agarwal 2013-10-24 06:31:49 UTC Fixed In Version glusterfs-3.4.0.36rhs-1
Saurabh 2013-10-24 09:37:20 UTC Status ON_QA ASSIGNED
Pavithra 2013-10-29 05:00:54 UTC CC psriniva
Doc Text Cause:

1. If the application is doing writes at size x and available space before hitting quota limit is y and if (x > y), we used to fail the entire write. Because of this y bytes of storage was always available, since no writes were allowed to pass. However, create was allowed by quota since space consumed for creating a directory entry was assumed to be less than y bytes.

2. Disk space consumed by directories to store directory entries was not accounted.

Consequence:
Because of the causes stated above, if the application is trying to create non-empty files with write sizes as explained above, we would end up with zero byte sized files (since one was able to create files but subsequent writes to it will fail with Disk quota exceeded errors).


Fix:
1. Allow partial writes. Once we cross quota limits (limit reaching because of partial writes), even creates will fail.

2. Account space consumed for storing directory entries too.

Result:
Zero byte sized files are created when a write operation exceeds the available quota space. Since Quota does not account for the disk blocks consumed by a directory(as per Bug 1016419), the write operation creates the directory entry but the subsequent write operation fails because of unavailable disk space.
Flags needinfo?(rgowdapp)
Pavithra 2013-10-30 05:30:13 UTC Blocks 1020127
Pavithra 2013-11-07 04:29:36 UTC Doc Type Bug Fix Known Issue
Red Hat Bugzilla 2013-11-07 04:29:36 UTC Doc Type Known Issue Bug Fix
Pavithra 2013-11-08 05:15:55 UTC Doc Type Bug Fix Known Issue
Red Hat Bugzilla 2013-11-08 05:15:55 UTC Doc Type Known Issue Bug Fix
Vivek Agarwal 2013-11-08 08:29:25 UTC Priority unspecified medium
Vivek Agarwal 2013-11-12 10:36:59 UTC Doc Type Bug Fix Known Issue
Red Hat Bugzilla 2013-11-12 10:36:59 UTC Doc Type Known Issue Bug Fix
Vivek Agarwal 2013-11-14 11:26:35 UTC CC asriram, gluster-bugs, mhideo, storage-doc, vraman
Component glusterfs-server doc-Release_Notes
Assignee rgowdapp psriniva
Pavithra 2013-11-25 06:41:18 UTC Doc Text Zero byte sized files are created when a write operation exceeds the available quota space. Since Quota does not account for the disk blocks consumed by a directory(as per Bug 1016419), the write operation creates the directory entry but the subsequent write operation fails because of unavailable disk space. Zero byte sized files are created when a write operation exceeds the available quota space. Since Quota does not account for the disk blocks consumed by a directory(as per Bug 1016419), the write operation creates the directory entry but the subsequent write operation fails because of unavailable disk space..
Doc Type Bug Fix Known Issue
Pavithra 2013-11-25 06:43:49 UTC Doc Text Zero byte sized files are created when a write operation exceeds the available quota space. Since Quota does not account for the disk blocks consumed by a directory(as per Bug 1016419), the write operation creates the directory entry but the subsequent write operation fails because of unavailable disk space.. Zero byte sized files are created when a write operation exceeds the available quota space. Since Quota does not account for the disk blocks consumed by a directory(as per Bug 1016419), the write operation creates the directory entry but the subsequent write operation fails because of unavailable disk space.
Vivek Agarwal 2013-12-03 07:35:06 UTC Component doc-Release_Notes glusterfs
Vivek Agarwal 2013-12-03 07:52:21 UTC CC vagarwal
Assignee psriniva rgowdapp
krishnan parthasarathi 2014-02-28 09:44:03 UTC Component glusterfs gluster-quota
John Skeoch 2014-03-31 01:32:07 UTC CC vraman rwheeler
Raghavendra G 2014-12-08 16:30:53 UTC Flags needinfo?(rgowdapp)
John Skeoch 2015-01-04 23:16:00 UTC CC shaines kwaldron
Vijaikumar Mallikarjuna 2015-01-12 09:19:11 UTC Status ASSIGNED CLOSED
CC vmallika
Resolution --- NEXTRELEASE
Last Closed 2015-01-12 04:19:11 UTC
John Poelstra 2015-01-17 21:25:13 UTC CC poelstra
John Poelstra 2015-01-19 20:13:15 UTC CC kwaldron
John Skeoch 2016-01-19 06:12:26 UTC CC mzywusko
Rejy M Cyriac 2016-09-17 12:40:40 UTC CC storage-qa-internal
Component gluster-quota quota
John Poelstra 2016-09-19 22:06:47 UTC CC poelstra

Back to bug 998893