[Checkins] SVN: lovely.memcached/trunk/src/lovely/memcached/ handle raw data, so that is no pickle in storage

Bernd Dorn bernd.dorn at lovelysystems.com
Thu May 3 08:45:17 EDT 2007


Log message for revision 75051:
  handle raw data, so that is no pickle in storage

Changed:
  U   lovely.memcached/trunk/src/lovely/memcached/README.txt
  U   lovely.memcached/trunk/src/lovely/memcached/utility.py

-=-
Modified: lovely.memcached/trunk/src/lovely/memcached/README.txt
===================================================================
--- lovely.memcached/trunk/src/lovely/memcached/README.txt	2007-05-03 11:43:23 UTC (rev 75050)
+++ lovely.memcached/trunk/src/lovely/memcached/README.txt	2007-05-03 12:45:17 UTC (rev 75051)
@@ -181,10 +181,11 @@
   'NS_a'
 
   
-Now we need can get the value with the raw key.
+Now we need can get the value with the raw key. Note also the value
+was treated as a string, so we get a string back instead of a unicode.
 
   >>> util.query('a', raw=True)
-  u'value of a'
+  'value of a'
   >>> util.query('a', raw=False) is None
   True
 
@@ -192,7 +193,7 @@
 
   >>> util.invalidate('a')
   >>> util.query('a', raw=True)
-  u'value of a'
+  'value of a'
   >>> util.invalidate('a', raw=True)
   >>> util.query('a', raw=True) is None
   True

Modified: lovely.memcached/trunk/src/lovely/memcached/utility.py
===================================================================
--- lovely.memcached/trunk/src/lovely/memcached/utility.py	2007-05-03 11:43:23 UTC (rev 75050)
+++ lovely.memcached/trunk/src/lovely/memcached/utility.py	2007-05-03 12:45:17 UTC (rev 75051)
@@ -78,7 +78,8 @@
         if lifetime is None:
             lifetime = self.defaultLifetime
         ns = self._getNS(ns, raw)
-        data = cPickle.dumps(data)
+        if not raw:
+            data = cPickle.dumps(data)
         log.debug('set: %r, %r, %r, %r' % (key,
                                            len(data), ns,
                                            lifetime))
@@ -104,6 +105,8 @@
         res = self.client.get(self._buildKey(key, ns, raw=raw))
         if res is None:
             return default
+        if raw:
+            return res
         return cPickle.loads(res)
 
     def _buildDepKey(self, dep, ns):



More information about the Checkins mailing list