avoid explicit rowlock in taskWaitCheck
This commit is contained in:
parent
a9526e8403
commit
b283835220
1 changed files with 4 additions and 5 deletions
|
|
@ -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]
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue