Page MenuHomePhabricator

Make wikilove_log.wll_sender/wll_receiver unsigned on wmf wikis
Closed, ResolvedPublic

Description

For posterity, there is how the table looks at one of the enwiki production DB replicas:

wikiadmin@10.64.32.13(enwiki)> show create table wikilove_log\G
*************************** 1. row ***************************
       Table: wikilove_log
Create Table: CREATE TABLE `wikilove_log` (
  `wll_id` int(11) NOT NULL AUTO_INCREMENT,
  `wll_timestamp` binary(14) NOT NULL,
  `wll_sender` int(11) NOT NULL,
  `wll_sender_registration` binary(14) DEFAULT NULL,
  `wll_sender_editcount` int(11) DEFAULT NULL,
  `wll_receiver` int(11) NOT NULL,
  `wll_receiver_registration` binary(14) DEFAULT NULL,
  `wll_receiver_editcount` int(11) DEFAULT NULL,
  `wll_type` varbinary(64) NOT NULL,
  `wll_subject` varbinary(255) NOT NULL,
  `wll_message` blob NOT NULL,
  `wll_email` tinyint(1) NOT NULL DEFAULT 0,
  PRIMARY KEY (`wll_id`),
  KEY `wll_timestamp` (`wll_timestamp`),
  KEY `wll_type_time` (`wll_type`,`wll_timestamp`),
  KEY `wll_sender_time` (`wll_sender`,`wll_timestamp`),
  KEY `wll_receiver_time` (`wll_receiver`,`wll_timestamp`)
) ENGINE=InnoDB AUTO_INCREMENT=153645 DEFAULT CHARSET=binary ROW_FORMAT=COMPRESSED
1 row in set (0.000 sec)

It indeeds appears to be different from what's in the repo now.

Thanks for the definition, it missed the unsigned on two columns as done back in 2016 at https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/extensions/WikiLove/+/7d61821685181b8c97a4df9d988495ab25a3b04f%5E%21/patches/WikiLoveLog.sql

ALTER TABLE  /*_*/wikilove_log
CHANGE  wll_sender wll_sender INT UNSIGNED NOT NULL,
CHANGE  wll_receiver wll_receiver INT UNSIGNED NOT NULL;
  1. ALTERs to run: there is no commited alter, but see above
  2. Where to run those changes: wikis with wikilove - https://gerrit.wikimedia.org/g/operations/mediawiki-config/+/c73f08d501443801d839703ccb92b9cf7405523b/wmf-config/InitialiseSettings.php#17595
  3. s1
  4. s2
  5. s3
  6. s4
  7. s5
  8. s6
  9. s7
  1. When to run those changes: any time
  2. If the schema change is backwards compatible: Yes
  3. If the schema change has been tested already on some of the test/beta wikis: Tested in beta cluster.
  4. if the data should be made available on the labs replicas and/or dumps: no change of the existing rules

Related Objects

Mentioned In
rSCHCHfd717bb84987: change_wll_sender_T300662.py: New schema change
Mentioned Here
P20740 dbctl commit (dc=all): 'Repooling after maintenance db1164 (T300662)'
P20735 dbctl commit (dc=all): 'Repooling after maintenance db1164 (T300662)'
P20734 dbctl commit (dc=all): 'Depooling db1164 (T300662)'
P20733 dbctl commit (dc=all): 'Repooling after maintenance db1105:3311 (T300662)'
P20727 dbctl commit (dc=all): 'Repooling after maintenance db1105:3311 (T300662)'
P20726 dbctl commit (dc=all): 'Depooling db1105:3311 (T300662)'
P20725 dbctl commit (dc=all): 'Repooling after maintenance db1119 (T300662)'
P20719 dbctl commit (dc=all): 'Repooling after maintenance db1119 (T300662)'
P20718 dbctl commit (dc=all): 'Depooling db1119 (T300662)'
P20717 dbctl commit (dc=all): 'Repooling after maintenance db1106 (T300662)'
P20713 dbctl commit (dc=all): 'Repooling after maintenance db1106 (T300662)'
P20712 dbctl commit (dc=all): 'Depooling db1106 (T300662)'
P20711 dbctl commit (dc=all): 'Repooling after maintenance db1184 (T300662)'
P20708 dbctl commit (dc=all): 'Repooling after maintenance db1184 (T300662)'
P20707 dbctl commit (dc=all): 'Depooling db1184 (T300662)'
P20706 dbctl commit (dc=all): 'Repooling after maintenance db1099:3311 (T300662)'
P20699 dbctl commit (dc=all): 'Repooling after maintenance db1099:3311 (T300662)'
P20698 dbctl commit (dc=all): 'Depooling db1099:3311 (T300662)'
P20697 dbctl commit (dc=all): 'Repooling after maintenance db1135 (T300662)'
P20691 dbctl commit (dc=all): 'Repooling after maintenance db1135 (T300662)'
P20690 dbctl commit (dc=all): 'Depooling db1135 (T300662)'
P20689 dbctl commit (dc=all): 'Repooling after maintenance db1134 (T300662)'
P20683 dbctl commit (dc=all): 'Repooling after maintenance db1134 (T300662)'
P20682 dbctl commit (dc=all): 'Depooling db1134 (T300662)'
P20681 dbctl commit (dc=all): 'Repooling after maintenance db1163 (T300662)'
P20676 dbctl commit (dc=all): 'Repooling after maintenance db1163 (T300662)'
P20675 dbctl commit (dc=all): 'Depooling db1163 (T300662)'
P20674 dbctl commit (dc=all): 'Repooling after maintenance db1169 (T300662)'
P20667 dbctl commit (dc=all): 'Repooling after maintenance db1169 (T300662)'
P20666 dbctl commit (dc=all): 'Depooling db1169 (T300662)'
P20605 dbctl commit (dc=all): 'Depooling db1098:3316 (T300662)'
T299800: Correct schema drift for wikilove_log between abstract and old non-abstract

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
Marostegui moved this task from Triage to Ready on the DBA board.
Marostegui added a subscriber: Marostegui.

All sections (except s8) have wikis with this enabled.

I will get this one started next week

Change 761879 had a related patch set uploaded (by Marostegui; author: Marostegui):

[operations/software/schema-changes@master] change_wll_sender_T300662.py: New schema change

https://gerrit.wikimedia.org/r/761879

Deployed this on db1096:3316 (jawiki and labswiki are the only wikis on s6 to have this) - will leave it like that till Monday

Mentioned in SAL (#wikimedia-operations) [2022-02-11T13:15:10Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1098:3316 (T300662)', diff saved to https://phabricator.wikimedia.org/P20605 and previous config saved to /var/cache/conftool/dbconfig/20220211-131507-marostegui.json

Change 761879 merged by Marostegui:

[operations/software/schema-changes@master] change_wll_sender_T300662.py: New schema change

https://gerrit.wikimedia.org/r/761879

I have deployed this directly on s4 master with replication as the table was pretty small (13k rows)

s2 only has it on: nlwiki nowiki ptwiki svwiki trwiki zhwiki and they are not too big, so going to deploy it on the master directly.

Deployed on s7 master for the following wikis: arwiki eswiki fawiki hewiki huwiki kowiki ukwiki viwiki

Deployed on s5 master for: enwikivoyage srwiki

In s3 it is only present on the following wikis:

azwiki
bnwiki
bnwikisource
ckbwiki
zhwikivoyage
eswikivoyage
fawiktionary
hewikiquote
hewikisource
hewiktionary
hiwiki
hywiki
incubatorwiki
iswiki
itwikiquote
itwikivoyage
mediawikiwiki
mkwiki
mlwiki
newiki
officewiki
orwiki
outreachwiki
pawiki
sawiki
sewikimedia
siwiki
slwiki
svwikinews
sqwiki
sqwikiquote
tawiki
testwiki
urwiki
zh_yuewiki
hiwikisource

And the table is tiny, so I am going to go ahead and running it on the master with a sleep

Mentioned in SAL (#wikimedia-operations) [2022-02-14T11:48:18Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1169 (T300662)', diff saved to https://phabricator.wikimedia.org/P20666 and previous config saved to /var/cache/conftool/dbconfig/20220214-114817-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T11:49:32Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1169 (T300662)', diff saved to https://phabricator.wikimedia.org/P20667 and previous config saved to /var/cache/conftool/dbconfig/20220214-114931-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T12:34:46Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1169 (T300662)', diff saved to https://phabricator.wikimedia.org/P20674 and previous config saved to /var/cache/conftool/dbconfig/20220214-123446-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T12:35:07Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1163 (T300662)', diff saved to https://phabricator.wikimedia.org/P20675 and previous config saved to /var/cache/conftool/dbconfig/20220214-123506-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T12:36:21Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1163 (T300662)', diff saved to https://phabricator.wikimedia.org/P20676 and previous config saved to /var/cache/conftool/dbconfig/20220214-123620-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T13:21:35Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1163 (T300662)', diff saved to https://phabricator.wikimedia.org/P20681 and previous config saved to /var/cache/conftool/dbconfig/20220214-132135-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T13:21:56Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1134 (T300662)', diff saved to https://phabricator.wikimedia.org/P20682 and previous config saved to /var/cache/conftool/dbconfig/20220214-132155-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T13:23:11Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1134 (T300662)', diff saved to https://phabricator.wikimedia.org/P20683 and previous config saved to /var/cache/conftool/dbconfig/20220214-132310-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T14:08:25Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1134 (T300662)', diff saved to https://phabricator.wikimedia.org/P20689 and previous config saved to /var/cache/conftool/dbconfig/20220214-140824-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T14:08:37Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1135 (T300662)', diff saved to https://phabricator.wikimedia.org/P20690 and previous config saved to /var/cache/conftool/dbconfig/20220214-140832-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T14:09:47Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1135 (T300662)', diff saved to https://phabricator.wikimedia.org/P20691 and previous config saved to /var/cache/conftool/dbconfig/20220214-140947-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T14:55:01Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1135 (T300662)', diff saved to https://phabricator.wikimedia.org/P20697 and previous config saved to /var/cache/conftool/dbconfig/20220214-145501-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T14:55:12Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1099:3311 (T300662)', diff saved to https://phabricator.wikimedia.org/P20698 and previous config saved to /var/cache/conftool/dbconfig/20220214-145508-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T14:56:25Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1099:3311 (T300662)', diff saved to https://phabricator.wikimedia.org/P20699 and previous config saved to /var/cache/conftool/dbconfig/20220214-145625-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T15:41:40Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1099:3311 (T300662)', diff saved to https://phabricator.wikimedia.org/P20706 and previous config saved to /var/cache/conftool/dbconfig/20220214-154139-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T15:41:52Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1184 (T300662)', diff saved to https://phabricator.wikimedia.org/P20707 and previous config saved to /var/cache/conftool/dbconfig/20220214-154147-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T15:45:03Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1184 (T300662)', diff saved to https://phabricator.wikimedia.org/P20708 and previous config saved to /var/cache/conftool/dbconfig/20220214-154502-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T16:30:17Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1184 (T300662)', diff saved to https://phabricator.wikimedia.org/P20711 and previous config saved to /var/cache/conftool/dbconfig/20220214-163016-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T16:31:15Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1106 (T300662)', diff saved to https://phabricator.wikimedia.org/P20712 and previous config saved to /var/cache/conftool/dbconfig/20220214-163113-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T16:32:29Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1106 (T300662)', diff saved to https://phabricator.wikimedia.org/P20713 and previous config saved to /var/cache/conftool/dbconfig/20220214-163228-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T17:17:43Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1106 (T300662)', diff saved to https://phabricator.wikimedia.org/P20717 and previous config saved to /var/cache/conftool/dbconfig/20220214-171743-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T17:17:58Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1119 (T300662)', diff saved to https://phabricator.wikimedia.org/P20718 and previous config saved to /var/cache/conftool/dbconfig/20220214-171750-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T17:19:06Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1119 (T300662)', diff saved to https://phabricator.wikimedia.org/P20719 and previous config saved to /var/cache/conftool/dbconfig/20220214-171905-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T18:04:20Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1119 (T300662)', diff saved to https://phabricator.wikimedia.org/P20725 and previous config saved to /var/cache/conftool/dbconfig/20220214-180419-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T18:04:31Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1105:3311 (T300662)', diff saved to https://phabricator.wikimedia.org/P20726 and previous config saved to /var/cache/conftool/dbconfig/20220214-180427-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T18:05:42Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1105:3311 (T300662)', diff saved to https://phabricator.wikimedia.org/P20727 and previous config saved to /var/cache/conftool/dbconfig/20220214-180541-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T18:50:56Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1105:3311 (T300662)', diff saved to https://phabricator.wikimedia.org/P20733 and previous config saved to /var/cache/conftool/dbconfig/20220214-185056-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T18:51:09Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Depooling db1164 (T300662)', diff saved to https://phabricator.wikimedia.org/P20734 and previous config saved to /var/cache/conftool/dbconfig/20220214-185103-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T18:52:18Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1164 (T300662)', diff saved to https://phabricator.wikimedia.org/P20735 and previous config saved to /var/cache/conftool/dbconfig/20220214-185218-marostegui.json

Mentioned in SAL (#wikimedia-operations) [2022-02-14T19:37:33Z] <marostegui@cumin1001> dbctl commit (dc=all): 'Repooling after maintenance db1164 (T300662)', diff saved to https://phabricator.wikimedia.org/P20740 and previous config saved to /var/cache/conftool/dbconfig/20220214-193732-marostegui.json

s1 primary master done
All is now done