diff --git a/internal/api/controller/pullreq/create.go b/internal/api/controller/pullreq/create.go index 809929b06..1c12a1a11 100644 --- a/internal/api/controller/pullreq/create.go +++ b/internal/api/controller/pullreq/create.go @@ -74,16 +74,19 @@ func (c *Controller) Create( return nil, usererror.BadRequest("a pull request for this target and source branch already exists") } - targetRepo, _ = c.repoStore.UpdateOptLock(ctx, targetRepo, func(repo *types.Repository) error { + targetRepo, err = c.repoStore.UpdateOptLock(ctx, targetRepo, func(repo *types.Repository) error { repo.PullReqSeq++ return nil }) + if err != nil { + return nil, fmt.Errorf("failed to aquire PullReqSeq number: %w", err) + } pr := newPullReq(session, targetRepo.PullReqSeq, sourceRepo, targetRepo, in) err = c.pullreqStore.Create(ctx, pr) if err != nil { - return nil, err + return nil, fmt.Errorf("pullreq creation failed: %w", err) } return pr, nil diff --git a/internal/store/database/repo.go b/internal/store/database/repo.go index e52b7effb..e969d77e5 100644 --- a/internal/store/database/repo.go +++ b/internal/store/database/repo.go @@ -418,6 +418,7 @@ repo_id ,repo_updated ,repo_git_uid ,repo_default_branch +,repo_pullreq_seq ,repo_fork_id ,repo_num_forks ,repo_num_pulls