<div dir="ltr"><div><div>Let me clarify the reasoning for the idea:<br><br>We realized that some schema changes (which used to be scheduled like other deployments) no longer take 1 hour (they can take 1 month, running continuously like <a href="https://phabricator.wikimedia.org/T139090">https://phabricator.wikimedia.org/T139090</a> , because it affects 3 of our largest tables). Also, they no longer requires read-only mode or affect code in anyway (unless they are a prerequisite).<br><br></div>On the other side, a schema change, combined with high read or write load from long-running maintenance jobs, like those of the updateCollation script, or any other (those where just an example), could potentially make lagging a worse problem: a single transaction has to store pending changes during its lifetime, or long-running reads can block and create pileups due to metadata locking. We want to avoid those, which certainly caused infrastructure issues in the past.<br><br></div>So, in summary, regular deployments are exclusive from each others. Long-running maintenance work could affect each other. This is a way for me (and others) to have visibility of those potential negative interactions, and make sure we can coordinate: "You are doing work on enwiki? No problem, we will just run this task for commons". "you need to do an emergency data recovery? I will wait to do this other task that can wait". Even if only DBAs use it, it is already useful to not perform incompatible changes at the same time. But it will be even more useful if everybody uses it!<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 22, 2016 at 4:27 PM, Alex Monk <span dir="ltr"><<a href="mailto:amonk@wikimedia.org" target="_blank">amonk@wikimedia.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I had been assuming that puppetised crons were not really relevant...</div><div class="gmail_extra"><div><div class="h5"><br><div class="gmail_quote">On 22 September 2016 at 15:19, Guillaume Lederrey <span dir="ltr"><<a href="mailto:glederrey@wikimedia.org" target="_blank">glederrey@wikimedia.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello!<br>
<br>
Increasing visibility sounds like a great idea! How far do we want to<br>
go in that direction? In particular, I'm thinking of a few of the<br>
crons we have for Cirrus. For example, we do have daily crons on<br>
terbium that re-generate the suggester indices. Those can run for ><br>
1h.<br>
<br>
My understanding is that those kind of crons should not be considered<br>
scripts, but standard working parts of the system. Adding them will<br>
probably generate more noise than useful information. Is this a<br>
reasonable understanding?<br>
<br>
Thanks!<br>
<br>
   Guillaume<br>
<div><div><br>
<br>
<br>
On Wed, Sep 21, 2016 at 12:29 AM, Greg Grossmeier <<a href="mailto:greg@wikimedia.org" target="_blank">greg@wikimedia.org</a>> wrote:<br>
> In an effort to reduce surprises and potential mishaps it is now<br>
> required to include any long running tasks in the deployment<br>
> calendar[0].<br>
><br>
> "Long running tasks" include any script that is run on production 'work<br>
> machines' such as terbium that last for longer than ~1 hour. Think:<br>
> migration and maintenance scripts.<br>
><br>
> This was discussed and proposed in T144661[1].<br>
><br>
> Best,<br>
><br>
> Greg<br>
><br>
> [0] <a href="https://wikitech.wikimedia.org/wiki/Deployments" rel="noreferrer" target="_blank">https://wikitech.wikimedia.org<wbr>/wiki/Deployments</a><br>
>     Relevant diff:<br>
>     <a href="https://wikitech.wikimedia.org/w/index.php?diff=850923&oldid=850244" rel="noreferrer" target="_blank">https://wikitech.wikimedia.or<wbr>g/w/index.php?diff=850923&oldi<wbr>d=850244</a><br>
> [1] <a href="https://phabricator.wikimedia.org/T144661" rel="noreferrer" target="_blank">https://phabricator.wikimedia.<wbr>org/T144661</a><br>
><br>
> --<br>
> | Greg Grossmeier            GPG: B2FA 27B1 F7EB D327 6B8E |<br>
> | Release Team Manager            A18D 1138 8E47 FAC8 1C7D |<br>
><br>
</div></div><span>> ______________________________<wbr>_________________<br>
> Engineering mailing list<br>
> <a href="mailto:Engineering@lists.wikimedia.org" target="_blank">Engineering@lists.wikimedia.or<wbr>g</a><br>
> <a href="https://lists.wikimedia.org/mailman/listinfo/engineering" rel="noreferrer" target="_blank">https://lists.wikimedia.org/ma<wbr>ilman/listinfo/engineering</a><br>
><br>
<br>
<br>
<br>
--<br>
</span><span><font color="#888888">Guillaume Lederrey<br>
Operations Engineer, Discovery<br>
Wikimedia Foundation<br>
UTC+2 / CEST<br>
</font></span><div><div><br>
______________________________<wbr>_________________<br>
Wikitech-l mailing list<br>
<a href="mailto:Wikitech-l@lists.wikimedia.org" target="_blank">Wikitech-l@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikitech-l" rel="noreferrer" target="_blank">https://lists.wikimedia.org/ma<wbr>ilman/listinfo/wikitech-l</a></div></div></blockquote></div><br><br clear="all"><div><br></div></div></div><span class="HOEnZb"><font color="#888888">-- <br><div data-smartmail="gmail_signature"><div dir="ltr"><div>Alex Monk</div><div>VisualEditor/Editing team</div><div><a href="https://wikimediafoundation.org/wiki/User:Krenair_(WMF)" target="_blank">https://wikimediafoundation.<wbr>org/wiki/User:Krenair_(WMF)</a></div></div></div>
</font></span></div>
<br>______________________________<wbr>_________________<br>
Engineering mailing list<br>
<a href="mailto:Engineering@lists.wikimedia.org">Engineering@lists.wikimedia.<wbr>org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/engineering" rel="noreferrer" target="_blank">https://lists.wikimedia.org/<wbr>mailman/listinfo/engineering</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Jaime Crespo<br></div><<a href="http://wikimedia.org" target="_blank">http://wikimedia.org</a>><br></div></div>
</div>