summaryrefslogtreecommitdiffstats
path: root/gluster/swift/common/DiskDir.py
diff options
context:
space:
mode:
authorLuis Pabon <lpabon@redhat.com>2013-07-26 15:56:26 -0400
committerLuis Pabon <lpabon@redhat.com>2013-08-06 11:23:46 -0700
commit9e6fbbcee91105ea8e5fa67a86b4b5d3054e32aa (patch)
tree84b26b4c4494b14c2334467121ba8be7af3cd5ed /gluster/swift/common/DiskDir.py
parent027951c1022739a8d53379048349ac2391763d6b (diff)
perf: Container and account performance inc
* Container and accounts performance increase by removing the need to update either the object count or the container count, respectively. New hidden configuratoins added to re-enable the functionality. * object_only configuratoin removed from fs.conf and replaced with a hidden configuration. The new hidden configuration reports gratuituosly crated directories as objects, to support a compatibility behavior with previous version 1.4.8 (even though it was incorrect). BUG 988969: https://bugzilla.redhat.com/show_bug.cgi?id=988969 Change-Id: Idca20b8629ec38606ff5692fe62bc2cadabffc86 Signed-off-by: Luis Pabon <lpabon@redhat.com> Reviewed-on: http://review.gluster.org/5403 Reviewed-by: Peter Portante <pportant@redhat.com> Tested-by: Peter Portante <pportant@redhat.com> Reviewed-on: http://review.gluster.org/5504
Diffstat (limited to 'gluster/swift/common/DiskDir.py')
-rw-r--r--gluster/swift/common/DiskDir.py21
1 files changed, 4 insertions, 17 deletions
diff --git a/gluster/swift/common/DiskDir.py b/gluster/swift/common/DiskDir.py
index 4c835d3..556907f 100644
--- a/gluster/swift/common/DiskDir.py
+++ b/gluster/swift/common/DiskDir.py
@@ -373,7 +373,7 @@ class DiskDir(DiskCommon):
# test cases working for now.
if e.errno != errno.ENOENT:
raise
- if Glusterfs.OBJECT_ONLY and metadata \
+ if not Glusterfs._implicit_dir_objects and metadata \
and metadata[X_CONTENT_TYPE] == DIR_TYPE \
and not dir_is_object(metadata):
continue
@@ -412,16 +412,8 @@ class DiskDir(DiskCommon):
reported_put_timestamp, reported_delete_timestamp,
reported_object_count, and reported_bytes_used.
"""
- if self._dir_exists:
- if not Glusterfs.OBJECT_ONLY:
- # If we are not configured for object only environments,
- # we should update the object counts in case they changed
- # behind our back.
- self._update_object_count()
- else:
- # FIXME: to facilitate testing, we need to update all
- # the time
- self._update_object_count()
+ if self._dir_exists and Glusterfs._container_update_object_count:
+ self._update_object_count()
data = {'account': self.account, 'container': self.container,
'object_count': self.metadata.get(
@@ -697,12 +689,7 @@ class DiskAccount(DiskCommon):
delete_timestamp, container_count, object_count,
bytes_used, hash, id
"""
- if not Glusterfs.OBJECT_ONLY:
- # If we are not configured for object only environments, we should
- # update the container counts in case they changed behind our back.
- self._update_container_count()
- else:
- # FIXME: to facilitate testing, we need to update all the time
+ if Glusterfs._account_update_container_count:
self._update_container_count()
data = {'account': self.account, 'created_at': '1',