avoid explicit rowlock in taskWaitCheck

This commit is contained in:
Mike McLean 2024-03-19 12:21:54 -04:00 committed by Tomas Kopecek
parent a9526e8403
commit b283835220

View file

@ -14628,8 +14628,7 @@ class Host(object):
# check to see if any of the tasks have finished # check to see if any of the tasks have finished
query = QueryProcessor(tables=['task'], columns=['id', 'state'], query = QueryProcessor(tables=['task'], columns=['id', 'state'],
clauses=['parent=%(parent)s', 'awaited IS TRUE'], clauses=['parent=%(parent)s', 'awaited IS TRUE'],
values={'parent': parent}, values={'parent': parent})
opts={'rowlock': True})
result = query.execute() result = query.execute()
canceled = koji.TASK_STATES['CANCELED'] canceled = koji.TASK_STATES['CANCELED']
closed = koji.TASK_STATES['CLOSED'] closed = koji.TASK_STATES['CLOSED']
@ -14648,10 +14647,10 @@ class Host(object):
finished, unfinished = self.taskWaitCheck(parent) finished, unfinished = self.taskWaitCheck(parent)
# un-await finished tasks # un-await finished tasks
if finished: if finished:
context.commit_pending = True finished.sort() # update in predictable order
for id in finished: for task_id in finished:
update = UpdateProcessor('task', clauses=['id=%(id)s'], update = UpdateProcessor('task', clauses=['id=%(id)s'],
values={'id': id}, data={'awaited': False}) values={'id': task_id}, data={'awaited': False})
update.execute() update.execute()
return [finished, unfinished] return [finished, unfinished]