# Don't remove this, we re-export the exceptions to scripts which import us
from sqlalchemy.exc import *
# Don't remove this, we re-export the exceptions to scripts which import us
from sqlalchemy.exc import *
session = kwargs.get('session')
# No session specified as last argument or in kwargs, create one.
session = kwargs.get('session')
# No session specified as last argument or in kwargs, create one.
# TODO: There must be a way of properly using bind parameters with %FOO%
q = session.query(PoolFile).filter(PoolFile.filename.like('%%%s%%' % filename))
# TODO: There must be a way of properly using bind parameters with %FOO%
q = session.query(PoolFile).filter(PoolFile.filename.like('%%%s%%' % filename))
if version is not None: q = q.filter_by(version=version)
if comment_id is not None: q = q.filter_by(comment_id=comment_id)
if version is not None: q = q.filter_by(version=version)
if comment_id is not None: q = q.filter_by(comment_id=comment_id)
if not isinstance(overridetype, list): overridetype = [overridetype]
q = q.join(OverrideType).filter(OverrideType.overridetype.in_(overridetype))
if not isinstance(overridetype, list): overridetype = [overridetype]
q = q.join(OverrideType).filter(OverrideType.overridetype.in_(overridetype))
# TODO: Move into database as above
if conf.FindB("Dinstall::SecurityQueueBuild"):
# Copy it since the original won't be readable by www-data
# TODO: Move into database as above
if conf.FindB("Dinstall::SecurityQueueBuild"):
# Copy it since the original won't be readable by www-data
q = session.query(QueueBuild).filter_by(filename=filename)
q = q.join(Suite).filter_by(suite_name=suite)
q = session.query(QueueBuild).filter_by(filename=filename)
q = q.join(Suite).filter_by(suite_name=suite)
q = q.join(Architecture).filter_by(arch_string=architecture)
q = q.join(Suite).filter_by(suite_name=suite)
q = q.join(Architecture).filter_by(arch_string=architecture)
q = q.join(Suite).filter_by(suite_name=suite)