From 20e46bc14796a0932405ce6ac341890bfb4352a4 Mon Sep 17 00:00:00 2001 From: David Goetz Date: Mon, 21 Apr 2014 15:20:12 -0700 Subject: [PATCH] setting request_node_count doesn't work Change-Id: Ia161b872cf5ffa43c10334b42cc36d679c3adf56 --- swift/proxy/server.py | 17 +++++++++-------- test/unit/proxy/test_server.py | 8 ++++++++ 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/swift/proxy/server.py b/swift/proxy/server.py index afa7916329..70a96682fc 100644 --- a/swift/proxy/server.py +++ b/swift/proxy/server.py @@ -139,11 +139,11 @@ class Application(object): conf.get('max_large_object_get_time', '86400')) value = conf.get('request_node_count', '2 * replicas').lower().split() if len(value) == 1: - value = int(value[0]) - self.request_node_count = lambda replicas: value + rnc_value = int(value[0]) + self.request_node_count = lambda replicas: rnc_value elif len(value) == 3 and value[1] == '*' and value[2] == 'replicas': - value = int(value[0]) - self.request_node_count = lambda replicas: value * replicas + rnc_value = int(value[0]) + self.request_node_count = lambda replicas: rnc_value * replicas else: raise ValueError( 'Invalid request_node_count value: %r' % ''.join(value)) @@ -165,11 +165,12 @@ class Application(object): value = conf.get('write_affinity_node_count', '2 * replicas').lower().split() if len(value) == 1: - value = int(value[0]) - self.write_affinity_node_count = lambda replicas: value + wanc_value = int(value[0]) + self.write_affinity_node_count = lambda replicas: wanc_value elif len(value) == 3 and value[1] == '*' and value[2] == 'replicas': - value = int(value[0]) - self.write_affinity_node_count = lambda replicas: value * replicas + wanc_value = int(value[0]) + self.write_affinity_node_count = \ + lambda replicas: wanc_value * replicas else: raise ValueError( 'Invalid write_affinity_node_count value: %r' % ''.join(value)) diff --git a/test/unit/proxy/test_server.py b/test/unit/proxy/test_server.py index 3925910612..788aa6016e 100644 --- a/test/unit/proxy/test_server.py +++ b/test/unit/proxy/test_server.py @@ -1779,6 +1779,14 @@ class TestObjectController(unittest.TestCase): resp = req.get_response(self.app) self.assertEquals(resp.status_int, 503) + def test_node_request_setting(self): + baseapp = proxy_server.Application({'request_node_count': '3'}, + FakeMemcache(), + container_ring=FakeRing(), + account_ring=FakeRing(), + object_ring=FakeRing()) + self.assertEquals(baseapp.request_node_count(3), 3) + def test_iter_nodes(self): with save_globals(): try: