diff options
author | Luis Pabon <lpabon@redhat.com> | 2013-07-26 15:56:26 -0400 |
---|---|---|
committer | Luis Pabon <lpabon@redhat.com> | 2013-08-06 11:23:46 -0700 |
commit | 9e6fbbcee91105ea8e5fa67a86b4b5d3054e32aa (patch) | |
tree | 84b26b4c4494b14c2334467121ba8be7af3cd5ed /gluster/swift/common/DiskDir.py | |
parent | 027951c1022739a8d53379048349ac2391763d6b (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.py | 21 |
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', |