Merge branch 'master' into ios7

* master:
  Better limit on redis logging.
  Fixing persistance of redis keys due to redis' RESTORE command using a millisecond TTL, not a second TTL.
  Fixing redis issues by pipelining.
This commit is contained in:
Samuel Clay 2013-10-08 11:48:44 -07:00
commit 6bd1eba14d
2 changed files with 12 additions and 4 deletions

View file

@ -197,8 +197,10 @@ class UserSubscription(models.Model):
dump = r.dump(unread_ranked_stories_key)
if dump:
rt.delete(unread_ranked_stories_key)
rt.restore(unread_ranked_stories_key, 1*60*60, dump)
pipeline = rt.pipeline()
pipeline.delete(unread_ranked_stories_key)
pipeline.restore(unread_ranked_stories_key, 1*60*60*1000, dump)
pipeline.execute()
r.delete(unread_ranked_stories_key)
current_time = int(time.time() + 60*60*24)

View file

@ -45,5 +45,11 @@ class RedisDumpMiddleware(object):
return instrumented_method
def process_message(self, *args, **kwargs):
query = ' '.join([str(arg) for arg in args if not isinstance(arg, Connection)])
return { 'query': query, }
query = []
for a, arg in enumerate(args):
if isinstance(arg, Connection):
continue
if len(str(arg)) > 100:
arg = "[%s bytes]" % len(arg)
query.append(str(arg).replace('\n', ''))
return { 'query': ' '.join(query) }