avoid redundant clauses and joins

Fixes https://pagure.io/koji/issue/2300
This commit is contained in:
Mike McLean 2020-06-09 14:43:28 -04:00 committed by Tomas Kopecek
parent 4675229937
commit b2dd73fa03

View file

@ -5365,9 +5365,6 @@ def query_buildroots(hostID=None, tagID=None, state=None, rpmID=None, archiveID=
# run separate queries for picking smallest candidate set
candidate_buildroot_ids = set()
if rpmID is not None:
joins.insert(0, 'buildroot_listing ON buildroot.id = buildroot_listing.buildroot_id')
fields.append(('buildroot_listing.is_update', 'is_update'))
clauses.append('buildroot_listing.rpm_id = %(rpmID)i')
query = QueryProcessor(columns=['buildroot_id'], tables=['buildroot_listing'],
clauses=['rpm_id = %(rpmID)i'], opts={'asList': True},
values=locals())
@ -5377,8 +5374,6 @@ def query_buildroots(hostID=None, tagID=None, state=None, rpmID=None, archiveID=
return _applyQueryOpts([], queryOpts)
if archiveID is not None:
joins.insert(0, 'buildroot_archives ON buildroot.id = buildroot_archives.buildroot_id')
clauses.append('buildroot_archives.archive_id = %(archiveID)i')
query = QueryProcessor(columns=['buildroot_id'], tables=['buildroot_archives'],
clauses=['archive_id = %(archiveID)i'], opts={'asList': True},
values=locals())
@ -5391,7 +5386,6 @@ def query_buildroots(hostID=None, tagID=None, state=None, rpmID=None, archiveID=
return _applyQueryOpts([], queryOpts)
if taskID is not None:
clauses.append('standard_buildroot.task_id = %(taskID)i')
query = QueryProcessor(columns=['buildroot_id'], tables=['standard_buildroot'],
clauses=['task_id = %(taskID)i'], opts={'asList': True},
values=locals())