From d7af577eb42e4c8bbdcadbb45a46d3a37c98193e Mon Sep 17 00:00:00 2001 From: Prashanth Pai Date: Mon, 7 Mar 2016 14:38:05 +0530 Subject: Remove redundant syscalls in GET path This change removes redundant fstat() and fgetxattr() performed in the GET path when object added from file interface is being accessed for the first time via the object interface. This is a manual backport of this change: https://review.openstack.org/#/c/246365/ Change-Id: I29f56cef80c94779145e2948ba14f35817d46e0c Signed-off-by: Prashanth Pai Reviewed-on: http://review.gluster.org/13624 Reviewed-by: Thiago da Silva Tested-by: Thiago da Silva --- test/unit/common/test_utils.py | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) (limited to 'test') diff --git a/test/unit/common/test_utils.py b/test/unit/common/test_utils.py index 0b173be..5ab6f36 100644 --- a/test/unit/common/test_utils.py +++ b/test/unit/common/test_utils.py @@ -320,10 +320,9 @@ class TestUtils(unittest.TestCase): def test_restore_metadata_none(self): # No initial metadata path = "/tmp/foo/i" - res_d = utils.restore_metadata(path, {'b': 'y'}) + res_d = utils.restore_metadata(path, {'b': 'y'}, {}) expected_d = {'b': 'y'} assert res_d == expected_d, "Expected %r, result %r" % (expected_d, res_d) - assert _xattr_op_cnt['get'] == 1, "%r" % _xattr_op_cnt assert _xattr_op_cnt['set'] == 1, "%r" % _xattr_op_cnt def test_restore_metadata(self): @@ -332,10 +331,9 @@ class TestUtils(unittest.TestCase): initial_d = {'a': 'z'} xkey = _xkey(path, utils.METADATA_KEY) _xattrs[xkey] = serialize_metadata(initial_d) - res_d = utils.restore_metadata(path, {'b': 'y'}) + res_d = utils.restore_metadata(path, {'b': 'y'}, initial_d) expected_d = {'a': 'z', 'b': 'y'} assert res_d == expected_d, "Expected %r, result %r" % (expected_d, res_d) - assert _xattr_op_cnt['get'] == 1, "%r" % _xattr_op_cnt assert _xattr_op_cnt['set'] == 1, "%r" % _xattr_op_cnt def test_restore_metadata_nochange(self): @@ -344,10 +342,9 @@ class TestUtils(unittest.TestCase): initial_d = {'a': 'z'} xkey = _xkey(path, utils.METADATA_KEY) _xattrs[xkey] = serialize_metadata(initial_d) - res_d = utils.restore_metadata(path, {}) + res_d = utils.restore_metadata(path, {}, initial_d) expected_d = {'a': 'z'} assert res_d == expected_d, "Expected %r, result %r" % (expected_d, res_d) - assert _xattr_op_cnt['get'] == 1, "%r" % _xattr_op_cnt assert _xattr_op_cnt['set'] == 0, "%r" % _xattr_op_cnt def test_deserialize_metadata_pickle(self): @@ -497,7 +494,6 @@ class TestUtils(unittest.TestCase): xkey = _xkey(tf.name, utils.METADATA_KEY) assert len(_xattrs.keys()) == 1 assert xkey in _xattrs - assert _xattr_op_cnt['get'] == 1 assert _xattr_op_cnt['set'] == 1 md = deserialize_metadata(_xattrs[xkey]) assert r_md == md @@ -519,7 +515,6 @@ class TestUtils(unittest.TestCase): xkey = _xkey(td, utils.METADATA_KEY) assert len(_xattrs.keys()) == 1 assert xkey in _xattrs - assert _xattr_op_cnt['get'] == 1 assert _xattr_op_cnt['set'] == 1 md = deserialize_metadata(_xattrs[xkey]) assert r_md == md -- cgit