Rob,

Please use https://phabricator.wikimedia.org/T112637 as the RFC and lets
revert the ticket to the original scope.

On Tue, Sep 15, 2015 at 8:00 AM, Rob Lanphier <ro...@wikimedia.org> wrote:

> Hi folks,
>
> Executive summary:
> T108255 is the default option for our Wednesday RfC review (E66)[0].
> As part of improving our database use, we need to start gating our
> code review on better shared norms of SQL correctness.  We need to
> enable strict mode, cleanup/enforce primary keys (T17441), and start
> using row-based replication (T109179).  Let's talk about this on
> Wednesday.
>
> Details:
> We're still not 100% decided what our topic for this week's RfC review
> meeting will be, but I'm leaning pretty heavily toward T108255.  Jaime
> Crespo (Jynus) asked me about it last week, which inspired me to turn
> T108255 into an RfC.  After he cleared up my writeup, I think there's
> something for us to talk about.
>
> In particular, I originally thought this was merely about enabling
> MariaDB's strict mode, and all of the rainbows and unicorns that would
> result from that.  Jaime corrected me, pointing out that there is
> other database related cleanup we would need to do to get the benefits
> of this.
>
> So, as of this writing, T108255 by title still appears to be about
> merely enabling strict mode.  It's tempting to split this ticket into
> two tickets:
> 1.  RfC: Write/enforce SQL correctness guidelines
> 2.  Enable MariaDB/MySQL's Strict Mode
>
> I may make a separate ticket tomorrow unless someone convinces me that
> kittens will die as a result.[1]
>
> Regarding SQL correctness guidelines, we have a mess of stuff on
> mediawiki.org, which doesn't seem to be very discoverable, and also
> doesn't seem to have any teeth to it.  We have a modest number of
> pages marked as "MediaWiki development policies"[2], but of the 5
> pages that were there, only 1 of them was about specifically about
> databases, which is weakly called [[Database optimization]][3].  Since
> [[Database optimization]] didn't seem to have gotten the review that
> [[Security for developers]] or [[Gerrit/+2]] had, I changed its status
> to "{{draft}}"
>
> We *do* have something that actually looks more policy-like, which is
> the "#Database patches" section of the [[Development policy]] page[4]
>  However, it's not clear that the "Development policy" page gets read,
> and has gotten pretty crufty.  It's tempting to put "{{draft}}" on
> that one too.
>
> It seems there are a number of sources we could/should be pulling from
> to make a database development policy[5]  T108255 (or some
> database-related RfC) should be about pulling all of these together
> into a coherent set of guidelines.  These guidelines should be
> well-known to frequent committers, and should be well-written for a
> beginning developer.
>
> What we need to actually *do* is not merely enable strict mode, but
> also cleanup/enforce primary keys (T17441), and start using row-based
> replication (T109179). Before completing all of this, we need our code
> review gated on actually making this work.
>
> The fact that we have a mess of documentation and norms is the reason
> why I'm leaning toward this topic for the E66 meeting this week.  If
> you believe we should talk about this, please participate at T108255
> and help get this as far along as possible so that we can wrap things
> up at the E66 meeting,  If you believe we should be talking about
> something else in our IRC meeting, please say so in E66 on Phab.
>
> Rob
>
> [0]  IRC meeting:
> <https://phabricator.wikimedia.org/E66>
> "RfC: Enable MariaDB/MySQL's Strict Mode"
> <https://phabricator.wikimedia.org/T108255>
>
> [1]  if someone decides to jfdi, I would recommend using T108255 for
> the "Write/enforce SQL correctness guidelines" RfC, and make a new
> ticket for the less important "Enable MariaDB/MySQL's Strict Mode".
> The comments on the ticket seem to relate more to the former than the
> latter, and the subscribers will probably be more interested in the
> former.
>
> [2]
> <https://www.mediawiki.org/wiki/Category:MediaWiki_development_policies>
>
> [3] <https://www.mediawiki.org/wiki/Database_optimization>
>
> [4] <https://www.mediawiki.org/wiki/Development_policy#Database_patches>
>
> [5] Other database-related guidance for developers:
> <https://www.mediawiki.org/wiki/Performance_guidelines>
> <https://www.mediawiki.org/wiki/Manual:Coding_conventions/Database>
> <https://www.mediawiki.org/wiki/Architecture_guidelines>
> <https://wikitech.wikimedia.org/wiki/Schema_changes>
>
> _______________________________________________
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l




-- 
Jaime Crespo
<http://wikimedia.org>
_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to