X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fprocess_policy.py;h=0f2f22aab8a67d93e0d18b8610c1c5e1275f8648;hb=0d69fff35ef45fda573467873ae2f01ca1954650;hp=c8c9f2d01070fd8785b05f2bd870a8b6254f8815;hpb=7db3402aa3615137ec7eb58bd3ba7ac662381d0f;p=dak.git diff --git a/dak/process_policy.py b/dak/process_policy.py index c8c9f2d0..0f2f22aa 100755 --- a/dak/process_policy.py +++ b/dak/process_policy.py @@ -37,6 +37,7 @@ import re import sys import traceback import apt_pkg +from sqlalchemy.orm.exc import NoResultFound from daklib.dbconn import * from daklib import daklog @@ -108,6 +109,8 @@ def try_or_reject(function): real_comment_reject(upload, srcqueue, comments, transaction, notify=False) if not Options['No-Action']: transaction.commit() + else: + transaction.rollback() return wrapper ################################################################################ @@ -136,13 +139,13 @@ def comment_accept(upload, srcqueue, comments, transaction): component_name = 'main' if section.find('/') != -1: component_name = section.split('/', 1)[0] - return session.query(Component).filter_by(component_name=component_name).one() + return get_mapped_component(component_name, session=session) def source_component_func(db_source): package_list = PackageList(db_source.proxy) component = source_component_from_package_list(package_list, upload.target_suite) if component is not None: - return component + return get_mapped_component(component.component_name, session=session) # Fallback for packages without Package-List field query = session.query(Override).filter_by(suite=overridesuite, package=db_source.source) \