<p dir="ltr"></p>
<p dir="ltr">Il 20/Nov/2016 15:08, &quot;Barak Korren&quot; &lt;<a href="mailto:bkorren@redhat.com">bkorren@redhat.com</a>&gt; ha scritto:<br>
&gt;<br>
&gt; Hi there,<br>
&gt;<br>
&gt; I would like to address a concernt that had been raised to us by<br>
&gt; multiple developers, and reach an agreement on how (and if)  to remedy<br>
&gt; it.<br>
&gt;<br>
&gt; Lets assume the following situation:<br>
&gt; We have a Git repo in Gerrit with top commit C0 in master.<br>
&gt; On time t0 developers Alice and Bob push patches P1 and P2 respectively<br>
&gt; to master so that we end up with the following situation in git:<br>
&gt; C0 &lt;= P1 (this is Alice`s patch)<br>
&gt; C0 &lt;= P2 (this is Bob`s patch)<br>
&gt;<br>
&gt; On time t1 CI runs for both patches checking the code as it looks for<br>
&gt; each patch. Lets assume CI is successful for both.<br>
&gt;<br>
&gt; On time t2 Alice submits her patch and Gerrit merges it, resulting in<br>
&gt; the following situation in master:<br>
&gt; C0 &lt;= P1<br>
&gt;<br>
&gt; On time t2 Bob submits his patch. Gerrit, seeing master has changed,<br>
&gt; re-bases the patch and merges it, the resulting situation (If the<br>
&gt; rebase is successful) is:<br>
&gt; C0 &lt;= P1 &lt;= P2<br>
&gt;<br>
&gt; This means that the resulting code was never tested in CI. This, in<br>
&gt; turn, causes various failures to show up post-merge despite having<br>
&gt; pre-merge CI run successfully.<br>
&gt;<br>
&gt; This situation is a result of the way our repos are currently<br>
&gt; configured. Most repos ATM are configured with the &quot;Rebase If<br>
&gt; Necessary&quot; submit type. This means that Gerrit tries to automatically<br>
&gt; rebase patches as mentioned in t2 above.<br>
&gt;<br>
&gt; We could, instead, configure the repos to use the &quot;Fast Forward Only&quot;<br>
&gt; submit type. In that case, when Bob submits on t2, Gerrit refuses to<br>
&gt; merge and asks Bob to rebase (While offering a convenient button to do<br>
&gt; it). When he does, a new patch set gets pushed, and subsequently<br>
&gt; checked by CI.<br>
&gt;<br>
&gt; I recommend we switch all projects to use the &quot;Fast Forward Only&quot; submit type.<br>
&gt;<br>
&gt; Thoughts? Concerns?<br></p>
<p dir="ltr">+1 for me<br></p>
<p dir="ltr">&gt;<br>
&gt; --<br>
&gt; Barak Korren<br>
&gt; <a href="mailto:bkorren@redhat.com">bkorren@redhat.com</a><br>
&gt; RHEV-CI Team<br>
&gt; _______________________________________________<br>
&gt; Devel mailing list<br>
&gt; <a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
&gt; <a href="http://lists.ovirt.org/mailman/listinfo/devel">http://lists.ovirt.org/mailman/listinfo/devel</a><br></p>