We have a UNIQUE KEY on (notification_user, notification_event) but that should be the PRIMARY KEY.
SQL: https://gerrit.wikimedia.org/r/#/c/292966/1/db_patches/patch-notification-pk.sql
We have a UNIQUE KEY on (notification_user, notification_event) but that should be the PRIMARY KEY.
SQL: https://gerrit.wikimedia.org/r/#/c/292966/1/db_patches/patch-notification-pk.sql
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Restricted Task | |||||
Resolved | kostajh | T294511 2021 Security Team wikireplicas audit | |||
Declined | None | T284948 Raw IPs of logged-out users disclosed in wiki-replicas | |||
Invalid | None | T283177 Anonymous Contributors IP Masking | |||
Declined | None | T63022 Add ability to thank anonymous/IP users | |||
Open | None | T58828 Provide access to Notifications for anonymous users | |||
Open | None | T143963 The Great Echo Database Cleanup of 2016 (and 2019) | |||
Resolved | Marostegui | T136428 Add primary key to echo_notification table |
Change 292966 had a related patch set uploaded (by Catrope):
Add a primary key to the echo_notification table
Change 292966 merged by jenkins-bot:
Add a primary key to the echo_notification table
I have been taking a look at these tables.
They appear to exist on:
Regarding s3, they only appear to be used on officewiki and mediawikiwiki:
root@db1075:/srv/sqldata# find . -name echo_notification.ibd | xargs ls -lhSr | tail -n5 -rw-rw---- 1 mysql mysql 176K Nov 18 2015 ./aawiktionary/echo_notification.ibd -rw-rw---- 1 mysql mysql 176K Nov 18 2015 ./aawiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 176K Nov 18 2015 ./aawikibooks/echo_notification.ibd -rw-rw---- 1 mysql mysql 36M Feb 1 08:06 ./officewiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 1.4G Feb 1 08:39 ./mediawikiwiki/echo_notification.ibd
Regarding s7:
root@db1041:/srv/sqldata# find . -name echo_notification.ibd | xargs ls -lhSr | tail -n5 -rw-rw---- 1 mysql mysql 1.0M Jan 17 2014 ./kowiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 1.2G Feb 1 08:39 ./metawiki/echo_notification.ibd
Regarding x1, this looks the place where most of them are really active:
root@db1031:/srv/sqldata# find . -name echo_notification.ibd | xargs ls -lhSr | tail -f -n10 -rw-rw---- 1 mysql mysql 792M Feb 1 08:41 ./zhwiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 916M Feb 1 08:35 ./itwiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 964M Feb 1 08:42 ./ruwiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 996M Feb 1 08:41 ./ptwiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 1.3G Feb 1 08:42 ./eswiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 1.5G Feb 1 08:43 ./dewiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 1.6G Feb 1 08:43 ./wikidatawiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 2.1G Feb 1 08:44 ./frwiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 2.3G Feb 1 08:43 ./commonswiki/echo_notification.ibd -rw-rw---- 1 mysql mysql 11G Feb 1 08:44 ./enwiki/echo_notification.ibd `
@Catrope I assume we need to alter all of them right? s3,s7 and x1?
Thanks!
@Marostegui Yes, they all need to be altered. I believe the aawik* ones and the kowiki one to be unused, the only wikis to have Echo tables not hosted on x1 should be mediawikiwiki, metawiki and officewiki (for historical reasons, I think the deployment of Echo on those wikis might predate the existence of x1). Dropping the unused ones should be safe, but then again altering an unused+tiny table should also be safe+fast :) so I have no particular preference as to whether you drop the unused ones first then alter the remaining ones, or alter all of them now and drop the unused ones some time later.
Thanks @Catrope - I will probably not drop any tables on this run, just to be safe :-)
The smaller ones I would like to directly alter on the master, the big ones will need the usual depool slave by slave and then run the ALTER. I will probably start on Monday with codfw.
So on monday I will start with the used ones in the following order:
I just tried the ALTER table on my lab (1G RAM and virtual storage) for the s3 echo_notification table, and it took 1:30 minutes I guess in production it will take a lot less so maybe it is even possible to run it on the master...
I am going to start with S7 now (slave by slave). I said I would start on Monday but the week has been busy with other stuff that had slightly more priority.
Mentioned in SAL (#wikimedia-operations) [2017-02-09T09:10:21Z] <marostegui> Deploy alter table on codfw hosts for s7 metawiki and wiki on the echo_notification tables - T136428
Mentioned in SAL (#wikimedia-operations) [2017-02-09T09:39:27Z] <marostegui> Deploy alter table on eqiad hosts for s7 metawiki and wiki on the echo_notification tables - T136428
hosts done in s7 so far (I decided to alter also kowiki, for consistency, as it was just one line and it is tiny):
dbstore2001:
root@neodymium:/home/marostegui/git/software/dbtools# mysql -hdbstore2001.codfw.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql -hdbstore2001.codfw.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db2040:
root@neodymium:/home/marostegui/git/software/dbtools# mysql -hdb2040.codfw.wmnet --skip-ssl kowiki -e "show create table echo_notification\G" | grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql -hdb2040.codfw.wmnet --skip-ssl metawiki -e "show create table echo_notification\G" | grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db2054:
root@neodymium:/home/marostegui/git/software/dbtools# mysql -hdb2054.codfw.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql -hdb2054.codfw.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db2061:
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb2061.codfw.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb2061.codfw.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db2068:
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb2068.codfw.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb2068.codfw.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db2029 (master)
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb2029.codfw.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb2029.codfw.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1034:
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1034.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1034.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1028:
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1028.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1028.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
Change 336799 had a related patch set uploaded (by Marostegui):
db-eqiad.php: Depool db1062
Mentioned in SAL (#wikimedia-operations) [2017-02-09T14:20:13Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Repool db1062 - T136428 (duration: 00m 45s)
Mentioned in SAL (#wikimedia-operations) [2017-02-09T14:46:53Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Repool db1062 - T136428 (duration: 00m 41s)
Change 336805 had a related patch set uploaded (by Marostegui):
db-eqiad.php: Depool db1079
Mentioned in SAL (#wikimedia-operations) [2017-02-09T15:01:37Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Depool db1079 - T136428 (duration: 00m 43s)
Mentioned in SAL (#wikimedia-operations) [2017-02-09T15:10:56Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Repool db1079 - T136428 (duration: 00m 40s)
Change 336809 had a related patch set uploaded (by Marostegui):
db-eqiad.php: Depool db1086
Mentioned in SAL (#wikimedia-operations) [2017-02-09T15:21:18Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Depool db1086 - T136428 (duration: 00m 40s)
Mentioned in SAL (#wikimedia-operations) [2017-02-09T15:30:44Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Repool db1086 - T136428 (duration: 00m 44s)
s7 is all done:
root@neodymium:/home/marostegui/git/software/dbtools# for i in `cat s7.hosts | awk -F " " '{print $1}' | egrep -v "dbstore2002|labsdb*|db1069|db1095" `; do echo $i; mysql --skip-ssl -h$i metawiki -e "show create table echo_notification\G" | egrep "UNIQUE|PRIMARY";done dbstore2001.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2040.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2047.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2054.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2061.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2068.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2029.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore1001.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore1002.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1028.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1033.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1034.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1039.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1062.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1079.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1086.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1094.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1041.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`),
dbstore1001
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdbstore1001.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdbstore1001.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
dbstore1002:
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdbstore1002.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdbstore1002.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1039
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1039.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1039.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1033
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1033.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1033.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1062
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1062.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1062.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1079
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1079.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1079.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1086
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1086.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1086.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1094
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1094.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1094.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
db1041
root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1041.eqiad.wmnet kowiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# mysql --skip-ssl -hdb1041.eqiad.wmnet metawiki -e "show create table echo_notification \G"| grep "PRIMARY KEY" PRIMARY KEY (`notification_user`,`notification_event`),
Mentioned in SAL (#wikimedia-operations) [2017-02-10T08:30:39Z] <marostegui> Deploye alter table s3 officewiki.echo_notification and mediawikiwiki.echo_notification tables only on codfw - T136428
dbstore2001
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdbstore2001.codfw.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
dbstore2002
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdbstore2002.codfw.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db2036
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb2036.codfw.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db2043
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb2043.codfw.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db2050
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb2050.codfw.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db2057
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb2057.codfw.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db2018
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb2018.codfw.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
These are the host in eqiad with the ALTER already done too:
dbstore1001
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdbstore1001.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
dbstore1002
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdbstore1002.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db1015, db1038, db1035 and db1044 are also done:
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb1035.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb1044.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb1038.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb1015.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
The only pending hosts in eqiad for s3 are:
db1077
db1078
db1075 (master)
They will be done on Monday so s3 will be completed.
Mentioned in SAL (#wikimedia-operations) [2017-02-13T09:00:45Z] <marostegui> Deploy alter table s3 officewiki and mediawikiwiki for echo_notification tables on eqiad - T136428
Change 337368 had a related patch set uploaded (by Marostegui):
db-eqiad.php: Depool db1077
Mentioned in SAL (#wikimedia-operations) [2017-02-13T09:09:46Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Depool db1077 - T136428 (duration: 00m 40s)
Mentioned in SAL (#wikimedia-operations) [2017-02-13T09:18:45Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Repool db1077 - T136428 (duration: 00m 40s)
Change 337371 had a related patch set uploaded (by Marostegui):
db-eqiad.php: Depool db1078
Mentioned in SAL (#wikimedia-operations) [2017-02-13T09:28:03Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Depool db1078 - T136428 (duration: 00m 40s)
Mentioned in SAL (#wikimedia-operations) [2017-02-13T09:34:24Z] <marostegui@tin> Synchronized wmf-config/db-eqiad.php: Repool db1078 - T136428 (duration: 00m 41s)
db1077:
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb1077.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db1078
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb1078.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
db1075 (master)
root@neodymium:~# for i in mediawikiwiki officewiki ; do echo $i; mysql --skip-ssl -hdb1075.eqiad.wmnet $i -e "show create table echo_notification \G"| egrep "PRIMARY|UNIQUE";done mediawikiwiki PRIMARY KEY (`notification_user`,`notification_event`), officewiki PRIMARY KEY (`notification_user`,`notification_event`),
s3 is done for officewiki and mediawikiwiki
So, s3 and s7 are done.
Pending: x1
root@neodymium:/home/marostegui/git/software/dbtools# for i in `cat s3.hosts | awk -F " " '{print $1}' | egrep -v "labsdb*|db1069|db1095" `; do echo $i; mysql --skip-ssl -h$i mediawikiwiki -e "show create table echo_notification\G" | egrep "UNIQUE|PRIMARY";done dbstore2001.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore2002.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2036.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2043.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2050.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2057.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2018.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore1001.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore1002.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1015.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1035.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1038.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1044.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1077.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1078.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1075.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), root@neodymium:/home/marostegui/git/software/dbtools# for i in `cat s3.hosts | awk -F " " '{print $1}' | egrep -v "labsdb*|db1069|db1095" `; do echo $i; mysql --skip-ssl -h$i officewiki -e "show create table echo_notification\G" | egrep "UNIQUE|PRIMARY";done dbstore2001.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore2002.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2036.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2043.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2050.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2057.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db2018.codfw.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore1001.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), dbstore1002.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1015.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1035.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1038.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1044.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1077.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1078.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`), db1075.eqiad.wmnet PRIMARY KEY (`notification_user`,`notification_event`),
Mentioned in SAL (#wikimedia-operations) [2017-02-14T06:56:16Z] <marostegui> Deploy alter table on x1 echo_notification tables - T136428
From x1 the following hosts are done
dbstore1001,1002
dbstore2001
db2033
db1029
Pending: db1031 (master) which I will probably do tomorrow morning (even though it is an online operation I rather do it earlier).
Once this host is done the whole ticket will be finished.
Mentioned in SAL (#wikimedia-operations) [2017-02-15T07:33:43Z] <marostegui> Deploy alter table on x1 master (db1031) for the echo_notification tables - T136428
x1 is done too, so I believe this ticket can be closed.
I am not going to paste all the output from all the x1 databases altered on the master but this is just a small list from the master:
PRIMARY KEY (`notification_user`,`notification_event`), maiwiki PRIMARY KEY (`notification_user`,`notification_event`), cnwikimedia PRIMARY KEY (`notification_user`,`notification_event`), azbwiki PRIMARY KEY (`notification_user`,`notification_event`), olowiki PRIMARY KEY (`notification_user`,`notification_event`), fiwikivoyage PRIMARY KEY (`notification_user`,`notification_event`), ecwikimedia PRIMARY KEY (`notification_user`,`notification_event`), projectcomwiki PRIMARY KEY (`notification_user`,`notification_event`), arbcom_cswiki PRIMARY KEY (`notification_user`,`notification_event`), tcywiki PRIMARY KEY (`notification_user`,`notification_event`), jamwiki PRIMARY KEY (`notification_user`,`notification_event`),