MR does not merge

Ben Gamari ben at well-typed.com
Thu Jan 17 15:09:33 UTC 2019


Simon Peyton Jones via ghc-devs <ghc-devs at haskell.org> writes:

> Ben
>
> Six days ago I submitted this MR
> https://gitlab.haskell.org/ghc/ghc/merge_requests/109
> Just tiny refactorings.  I said "merge when validated"
> But six days later, it still appears not to have merged. What's up? I
> was expecting it to merge in a matter of an hour or two.

Indeed this is a known issue that I have been working [1] with upstream
to resolve. A fix, which looks similar to the plan you propse, is
milestoned for the May release. In the meantime I have been handling
merging manually as I did under Phabricator: batch up mergeable MRs into
a merge branch, push the merge branch for CI, and merge it after it
validates.

Marge bot [2], mentioned by Evan, is another workaround for this
issue.However, my understanding is that it is unnecessarily serial which
I feared may slow the rate of merge. We could consider using it until a
proper upstream solution arrives, however.

In general I agree with Matthew that we should try very hard to avoid
ever merging broken code; the cost of bad patches is extremely high. The
solution that GitLab is looking to implement maintains a stack of MRs to
be merged, optimistically assuming that all will pass CI. When a new MR
is requested to be merged it is rebased onto the end of the stack and CI
jobs are started. This allows it to avoid testing commits serially. If
an MR low in the stack fails then it is dropped from the stack, all MRs
above it are rebased, and retested.

Cheers,

- Ben


[1] https://gitlab.com/gitlab-org/gitlab-ee/issues/9186
[2] https://github.com/smarkets/marge-bot
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 487 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20190117/bd89bcea/attachment.sig>


More information about the ghc-devs mailing list