From b24de76cda917e83e0e9ef6aaf080f7da8f9d0a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89lie=20Bouttier?= Date: Mon, 28 Aug 2017 11:34:27 +0200 Subject: [PATCH] avoid cache colision --- cfp/planning.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cfp/planning.py b/cfp/planning.py index 99ae81b..e17699d 100644 --- a/cfp/planning.py +++ b/cfp/planning.py @@ -9,6 +9,7 @@ from datetime import datetime, timedelta from copy import deepcopy from collections import OrderedDict, namedtuple from itertools import islice +from zlib import adler32 from .models import Conference, Talk, Room @@ -287,7 +288,7 @@ class Program: def render(self, output='html'): if self.cache: - cache_entry = 'program.%s.%s' % ('pending' if self.pending else 'final', output) + cache_entry = 'ponyconf-%d' % adler32('|'.join(map(str, [self.site.domain, output, self.pending])).encode('utf-8')) result = cache.get(cache_entry) if not result: result = getattr(self, '_as_%s' % output)()