Blame 0002-Fix-bug-where-serialization_format-is-ignored.patch

5970428
From c38568f026853f64f2669f03bd56441b007f13be Mon Sep 17 00:00:00 2001
5970428
From: gholt <z-launchpad@brim.net>
5970428
Date: Tue, 18 Sep 2012 18:24:47 +0000
5970428
Subject: [PATCH] Fix bug where serialization_format is ignored
Derek Higgins e3eb078
Derek Higgins e3eb078
Change-Id: I5a5ac8b5f18e077105ab12e9b1f0ccafac3983f7
Derek Higgins e3eb078
---
5970428
 swift/common/middleware/memcache.py          |    2 ++
5970428
 test/unit/common/middleware/test_memcache.py |   12 ++++++++++--
Derek Higgins e3eb078
 2 files changed, 12 insertions(+), 2 deletions(-)
Derek Higgins e3eb078
Derek Higgins e3eb078
diff --git a/swift/common/middleware/memcache.py b/swift/common/middleware/memcache.py
Derek Higgins e3eb078
index 20121c9..06678c4 100644
Derek Higgins e3eb078
--- a/swift/common/middleware/memcache.py
Derek Higgins e3eb078
+++ b/swift/common/middleware/memcache.py
Derek Higgins e3eb078
@@ -52,6 +52,8 @@ class MemcacheMiddleware(object):
Derek Higgins e3eb078
             self.memcache_servers = '127.0.0.1:11211'
Derek Higgins e3eb078
         if serialization_format is None:
Derek Higgins e3eb078
             serialization_format = 0
Derek Higgins e3eb078
+        else:
Derek Higgins e3eb078
+            serialization_format = int(serialization_format)
Derek Higgins e3eb078
 
Derek Higgins e3eb078
         self.memcache = MemcacheRing(
Derek Higgins e3eb078
             [s.strip() for s in self.memcache_servers.split(',') if s.strip()],
Derek Higgins e3eb078
diff --git a/test/unit/common/middleware/test_memcache.py b/test/unit/common/middleware/test_memcache.py
5970428
index e217a96..28c7b13 100644
Derek Higgins e3eb078
--- a/test/unit/common/middleware/test_memcache.py
Derek Higgins e3eb078
+++ b/test/unit/common/middleware/test_memcache.py
Derek Higgins e3eb078
@@ -48,7 +48,7 @@ class SetConfigParser(object):
Derek Higgins e3eb078
             if option == 'memcache_servers':
Derek Higgins e3eb078
                 return '1.2.3.4:5'
Derek Higgins e3eb078
             elif option == 'memcache_serialization_support':
Derek Higgins e3eb078
-                return '2'
Derek Higgins e3eb078
+                return '1'
Derek Higgins e3eb078
             else:
Derek Higgins e3eb078
                 raise NoOptionError(option)
Derek Higgins e3eb078
         else:
Derek Higgins e3eb078
@@ -104,6 +104,8 @@ class TestCacheMiddleware(unittest.TestCase):
Derek Higgins e3eb078
         finally:
Derek Higgins e3eb078
             memcache.ConfigParser = orig_parser
Derek Higgins e3eb078
         self.assertEquals(app.memcache_servers, '127.0.0.1:11211')
5970428
+        self.assertEquals(app.memcache._allow_pickle, True)
5970428
+        self.assertEquals(app.memcache._allow_unpickle, True)
Derek Higgins e3eb078
 
Derek Higgins e3eb078
     def test_conf_from_extra_conf(self):
Derek Higgins e3eb078
         orig_parser = memcache.ConfigParser
Derek Higgins e3eb078
@@ -113,16 +115,22 @@ class TestCacheMiddleware(unittest.TestCase):
Derek Higgins e3eb078
         finally:
Derek Higgins e3eb078
             memcache.ConfigParser = orig_parser
Derek Higgins e3eb078
         self.assertEquals(app.memcache_servers, '1.2.3.4:5')
Derek Higgins e3eb078
+        self.assertEquals(app.memcache._allow_pickle, False)
Derek Higgins e3eb078
+        self.assertEquals(app.memcache._allow_unpickle, True)
Derek Higgins e3eb078
 
Derek Higgins e3eb078
     def test_conf_from_inline_conf(self):
Derek Higgins e3eb078
         orig_parser = memcache.ConfigParser
Derek Higgins e3eb078
         memcache.ConfigParser = SetConfigParser
Derek Higgins e3eb078
         try:
Derek Higgins e3eb078
             app = memcache.MemcacheMiddleware(
Derek Higgins e3eb078
-                    FakeApp(), {'memcache_servers': '6.7.8.9:10'})
Derek Higgins e3eb078
+                    FakeApp(),
Derek Higgins e3eb078
+                    {'memcache_servers': '6.7.8.9:10',
Derek Higgins e3eb078
+                     'serialization_format': '0'})
Derek Higgins e3eb078
         finally:
Derek Higgins e3eb078
             memcache.ConfigParser = orig_parser
Derek Higgins e3eb078
         self.assertEquals(app.memcache_servers, '6.7.8.9:10')
Derek Higgins e3eb078
+        self.assertEquals(app.memcache._allow_pickle, False)
Derek Higgins e3eb078
+        self.assertEquals(app.memcache._allow_unpickle, True)
Derek Higgins e3eb078
 
Derek Higgins e3eb078
 
Derek Higgins e3eb078
 if __name__ == '__main__':