##// END OF EJS Templates
fixes to pidlock, to not raise unneded execptions...
fixes to pidlock, to not raise unneded execptions few fixes in templating for empty repository to not show some labels, fixed tag/branch switcher

File last commit:

r482:7afbc45a celery
r509:b50e79b4 default
Show More
meta.py
58 lines | 1.7 KiB | text/x-python | PythonLexer
Marcin Kuzminski
initial commit.
r0 """SQLAlchemy Metadata and Session object"""
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import scoped_session, sessionmaker
added caching queries to hg-app
r482 from pylons_app.model import caching_query
from beaker import cache
import os
from os.path import join as jn, dirname as dn, abspath
import time
# Beaker CacheManager. A home base for cache configurations.
cache_manager = cache.CacheManager()
Marcin Kuzminski
initial commit.
r0
__all__ = ['Base', 'Session']
#
# SQLAlchemy session manager. Updated by model.init_model()
#
added caching queries to hg-app
r482 Session = scoped_session(
sessionmaker(
query_cls=caching_query.query_callable(cache_manager)
)
)
Marcin Kuzminski
initial commit.
r0
# The declarative Base
Base = declarative_base()
#For another db...
#Base2 = declarative_base()
added caching queries to hg-app
r482
#===============================================================================
# CACHE OPTIONS
#===============================================================================
cache_dir = jn(dn(dn(dn(abspath(__file__)))), 'data', 'cache')
if not os.path.isdir(cache_dir):
os.mkdir(cache_dir)
# set start_time to current time
# to re-cache everything
# upon application startup
start_time = time.time()
# configure the "sqlalchemy" cache region.
cache_manager.regions['sql_cache_short'] = {
'type':'memory',
'data_dir':cache_dir,
'expire':10,
'start_time':start_time
}
cache_manager.regions['sql_cache_med'] = {
'type':'memory',
'data_dir':cache_dir,
'expire':360,
'start_time':start_time
}
cache_manager.regions['sql_cache_long'] = {
'type':'file',
'data_dir':cache_dir,
'expire':3600,
'start_time':start_time
}
#to use cache use this in query
#.options(FromCache("sqlalchemy_cache_type", "cachekey"))