pull-requests: increase stability of concurrent pull requests creation by flushing prematurly the statuses of commits.
This is required to increase the versions on each concurrent call. Otherwise we could get into an integrity errors of commitsha+version+repo
This commit is contained in:
parent
a631443803
commit
07049ea5d4
2 changed files with 2 additions and 1 deletions
|
|
@ -312,6 +312,7 @@ class ChangesetStatusModel(BaseModel):
|
|||
for st in cur_statuses:
|
||||
st.version += 1
|
||||
Session().add(st)
|
||||
Session().flush()
|
||||
|
||||
def _create_status(user, repo, status, comment, revision, pull_request):
|
||||
new_status = ChangesetStatus()
|
||||
|
|
|
|||
|
|
@ -530,7 +530,7 @@ class PullRequestModel(BaseModel):
|
|||
)
|
||||
# we commit early at this point. This has to do with a fact
|
||||
# that before queries do some row-locking. And because of that
|
||||
# we need to commit and finish transation before below validate call
|
||||
# we need to commit and finish transaction before below validate call
|
||||
# that for large repos could be long resulting in long row locks
|
||||
Session().commit()
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue