Bug 887301

Summary: Container listing of objects is sorted resulting is higher latency in response time
Product: [Community] GlusterFS Reporter: Peter Portante <pportant>
Component: object-storageAssignee: Peter Portante <pportant>
Severity: high Docs Contact:
Priority: unspecified    
Version: pre-releaseCC: gluster-bugs, jdarcy, junaid
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Fixed In Version: glusterfs-3.4.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-24 13:29:12 EDT Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 952693    

Description Peter Portante 2012-12-14 10:48:04 EST
The OpenStack Swift REST API does not require the list of objects returned by a GET on a container to be sorted. The DiskDir object performs such a sort on the entire list of files in the directory, after they have been read, but before any filtering is applied. This is not necessary and for containers that contain lots and lots of objects this is a potential performance issue.
Comment 1 Vijay Bellur 2012-12-17 09:16:56 EST
CHANGE: http://review.gluster.org/4312 (object-storage: don't sort object list, not req'd) merged in master by Vijay Bellur (vbellur@redhat.com)
Comment 2 Peter Portante 2013-01-02 07:13:59 EST
Junaid, if you don't mind, I'll take this one. I have been doing some research on this. Even though the REST API for container listing of objects does not say it returns a sorted list of objects, the operation of marker parameter implies it.

So this change is really introducing a bug.

I have a set of changes that I am working on for the DiskDir module that will hopefully mitigate this by restoring the sort.
Comment 3 Junaid 2013-01-22 01:27:17 EST
Peter, can we move this bug to on_qa or are there any other patches that are in pipeline for this bug?
Comment 4 Peter Portante 2013-01-22 07:07:36 EST
There is more work to be done, not in the pipeline, though, to address this issue. I have started some of it, but put in on hold due to other issues that have come up.
Comment 5 Vijay Bellur 2013-02-11 21:01:10 EST
CHANGE: http://review.gluster.org/4360 (object-storage: Use the wrapper functions provided by fs_utils.py to make   system calls.) merged in master by Anand Avati (avati@redhat.com)
Comment 6 Vijay Bellur 2013-03-07 06:00:25 EST
CHANGE: http://review.gluster.org/4394 (object-storage: Fixing the errors and warnings in unittest.) merged in master by Vijay Bellur (vbellur@redhat.com)