##// END OF EJS Templates
Don't create one big transaction when doing cache-keys cleanup....
Don't create one big transaction when doing cache-keys cleanup. Should improve locking issues with db transactions when purging large ammount of keys

File last commit:

r2695:26fac32c beta
r3977:7c84b383 default
Show More
paths.py
37 lines | 834 B | text/x-python | PythonLexer
import os
abspath = lambda * p: os.path.abspath(os.path.join(*p))
def get_dirs_for_path(*paths):
"""
Returns list of directories, including intermediate.
"""
for path in paths:
head = path
while head:
head, tail = os.path.split(head)
if head:
yield head
else:
# We don't need to yield empty path
break
def get_dir_size(path):
root_path = path
size = 0
for path, dirs, files in os.walk(root_path):
for f in files:
try:
size += os.path.getsize(os.path.join(path, f))
except OSError:
pass
return size
def get_user_home():
"""
Returns home path of the user.
"""
return os.getenv('HOME', os.getenv('USERPROFILE')) or ''