Fix for issue 1996

This bug was caused by appadmin creating unnecessary files in the cache folder.
This commit is contained in:
Leonel Câmara
2014-10-17 19:12:00 +01:00
parent bd05dc68ea
commit 9d4b2e66c4
2 changed files with 36 additions and 56 deletions
+3 -13
View File
@@ -461,15 +461,9 @@ def ccache():
if value[0] < ram['oldest']: if value[0] < ram['oldest']:
ram['oldest'] = value[0] ram['oldest'] = value[0]
ram['keys'].append((key, GetInHMS(time.time() - value[0]))) ram['keys'].append((key, GetInHMS(time.time() - value[0])))
folder = os.path.join(request.folder,'cache')
if not os.path.exists(folder): for key in cache.disk.storage:
os.mkdir(folder) value = cache.disk.storage[key]
locker = open(os.path.join(folder, 'cache.lock'), 'a')
portalocker.lock(locker, portalocker.LOCK_EX)
disk_storage = shelve.open(
os.path.join(folder, 'cache.shelve'))
try:
for key, value in disk_storage.items():
if isinstance(value, dict): if isinstance(value, dict):
disk['hits'] = value['hit_total'] - value['misses'] disk['hits'] = value['hit_total'] - value['misses']
disk['misses'] = value['misses'] disk['misses'] = value['misses']
@@ -485,10 +479,6 @@ def ccache():
if value[0] < disk['oldest']: if value[0] < disk['oldest']:
disk['oldest'] = value[0] disk['oldest'] = value[0]
disk['keys'].append((key, GetInHMS(time.time() - value[0]))) disk['keys'].append((key, GetInHMS(time.time() - value[0])))
finally:
portalocker.unlock(locker)
locker.close()
disk_storage.close()
total['entries'] = ram['entries'] + disk['entries'] total['entries'] = ram['entries'] + disk['entries']
total['bytes'] = ram['bytes'] + disk['bytes'] total['bytes'] = ram['bytes'] + disk['bytes']
+3 -13
View File
@@ -461,15 +461,9 @@ def ccache():
if value[0] < ram['oldest']: if value[0] < ram['oldest']:
ram['oldest'] = value[0] ram['oldest'] = value[0]
ram['keys'].append((key, GetInHMS(time.time() - value[0]))) ram['keys'].append((key, GetInHMS(time.time() - value[0])))
folder = os.path.join(request.folder,'cache')
if not os.path.exists(folder): for key in cache.disk.storage:
os.mkdir(folder) value = cache.disk.storage[key]
locker = open(os.path.join(folder, 'cache.lock'), 'a')
portalocker.lock(locker, portalocker.LOCK_EX)
disk_storage = shelve.open(
os.path.join(folder, 'cache.shelve'))
try:
for key, value in disk_storage.items():
if isinstance(value, dict): if isinstance(value, dict):
disk['hits'] = value['hit_total'] - value['misses'] disk['hits'] = value['hit_total'] - value['misses']
disk['misses'] = value['misses'] disk['misses'] = value['misses']
@@ -485,10 +479,6 @@ def ccache():
if value[0] < disk['oldest']: if value[0] < disk['oldest']:
disk['oldest'] = value[0] disk['oldest'] = value[0]
disk['keys'].append((key, GetInHMS(time.time() - value[0]))) disk['keys'].append((key, GetInHMS(time.time() - value[0])))
finally:
portalocker.unlock(locker)
locker.close()
disk_storage.close()
total['entries'] = ram['entries'] + disk['entries'] total['entries'] = ram['entries'] + disk['entries']
total['bytes'] = ram['bytes'] + disk['bytes'] total['bytes'] = ram['bytes'] + disk['bytes']