<p dir="ltr"><br>
On Jan 12, 2016 3:44 AM, &quot;Michael Adam&quot; &lt;<a href="mailto:obnox@samba.org">obnox@samba.org</a>&gt; wrote:<br>
&gt;<br>
&gt; On 2016-01-08 at 12:03 +0530, Raghavendra Talur wrote:<br>
&gt; &gt; Top posting, this is a very old thread.<br>
&gt; &gt;<br>
&gt; &gt; Keeping in view the recent NetBSD problems and the number of bugs creeping<br>
&gt; &gt; in, I suggest we do these things right now:<br>
&gt; &gt;<br>
&gt; &gt; a. Change the gerrit merge type to fast forward only.<br>
&gt; &gt; As explained below in the thread, with our current setup even if both<br>
&gt; &gt; PatchA and PatchB pass regression separately when both are merged it is<br>
&gt; &gt; possible that a functional bug creeps in.<br>
&gt; &gt; This is the only solution to prevent that from happening.<br>
&gt; &gt; I will work with Kaushal to get this done.<br>
&gt; &gt;<br>
&gt; &gt; b. In Jenkins, remove gerrit trigger and make it a manual operation<br>
&gt; &gt;<br>
&gt; &gt; Too many developers use the upstream infra as a test cluster and it is<br>
&gt; &gt; *not*.<br>
&gt; &gt; It is a verification mechanism for maintainers to ensure that the patch<br>
&gt; &gt; does not cause regression.<br>
&gt; &gt;<br>
&gt; &gt; It is required that all developers run full regression on their machines<br>
&gt; &gt; before asking for reviews.<br>
&gt;<br>
&gt; Hmm, I am not 100% sure I would underwrite that.<br>
&gt; I am coming from the Samba process, where we have exactly<br>
&gt; that: A developer should have run full selftest before<br>
&gt; submitting the change for review. Then after two samba<br>
&gt; team developers have given their review+ (counting the<br>
&gt; author), it can be pushed to our automatism that keeps<br>
&gt; rebasing on current upstream and running selftest until<br>
&gt; either selftest succeeds and is pushed as a fast forward<br>
&gt; or selftest fails.<br>
&gt;<br>
&gt; The reality is that people are lazy and think they know<br>
&gt; when they can skip selftest. But people are deceived and<br>
&gt; overlook problems.  Hence either reviewers run into failures<br>
&gt; or the automatic pre-push selftest fails. The problem<br>
&gt; I see with this is that it wastes the precios time of<br>
&gt; the reviewers.<br>
&gt;<br>
&gt; When I started contributing to Gluster, I found it to<br>
&gt; be a big, big plus to have automatic regression runs<br>
&gt; as a first step after submission, so that a reviewer<br>
&gt; has the option to only start looking at the patch once<br>
&gt; automatic tests have passed.<br>
&gt;<br>
&gt; I completely agree that the fast-forward-only and<br>
&gt; post-review-pre-merge-regression-run approach<br>
&gt; is the way to go, only this way the original problem<br>
&gt; described by Talur can be avoided.<br>
&gt;<br>
&gt; But would it be possible to keep and even require some<br>
&gt; amount of automatic pre-review test run (build and at<br>
&gt; least some amount of runtimte test)?<br>
&gt; It really prevents waste of time of reviewers/maintainers.<br>
&gt;<br>
&gt; The problem with this is of course that it can increase<br>
&gt; the (real) time needed to complete a review from submission<br>
&gt; until upstream merge.<br>
&gt;<br>
&gt; Just a few thoughts...<br>
&gt;<br>
&gt; Cheers - Michael<br>
&gt;</p>
<p dir="ltr">We had same concern from many other maintainers. I guess it would be better if test runs both before and after review. With these changes we would have removed test runs of work in progress patches. <br></p>