Page MenuHomePhabricator

user_newtalk has two indexes not renamed in s4
Closed, ResolvedPublic

Description

Everywhere, except s4 (testcommonswiki), the user_newtalk indexes are renamed to have un_ prefix but these drifts from the code has been reported for s4 only:

"user_newtalk un_user_id index-mismatch-code-extra": {
    "s4": [
        "db1138.eqiad.wmnet",
        "db1097.eqiad.wmnet",
        "db1081.eqiad.wmnet",
        "db1091.eqiad.wmnet",
        "db1121.eqiad.wmnet",
        "db1103.eqiad.wmnet",
        "db1084.eqiad.wmnet"
    ]
},
"user_newtalk un_user_ip index-mismatch-code-extra": {
    "s4": [
        "db1138.eqiad.wmnet",
        "db1097.eqiad.wmnet",
        "db1081.eqiad.wmnet",
        "db1091.eqiad.wmnet",
        "db1121.eqiad.wmnet",
        "db1103.eqiad.wmnet",
        "db1084.eqiad.wmnet"
    ]
},
"user_newtalk user_id index-mismatch-prod-extra": {
    "s4": [
        "db1138.eqiad.wmnet",
        "db1097.eqiad.wmnet",
        "db1081.eqiad.wmnet",
        "db1091.eqiad.wmnet",
        "db1121.eqiad.wmnet",
        "db1103.eqiad.wmnet",
        "db1084.eqiad.wmnet"
    ]
},
"user_newtalk user_ip index-mismatch-prod-extra": {
    "s4": [
        "db1138.eqiad.wmnet",
        "db1097.eqiad.wmnet",
        "db1081.eqiad.wmnet",
        "db1091.eqiad.wmnet",
        "db1121.eqiad.wmnet",
        "db1103.eqiad.wmnet",
        "db1084.eqiad.wmnet"
    ]
}

It seems T234066: Schema change to rename user_newtalk indexes was not completely done and this somehow fell into cracks.

Event Timeline

Mentioned in SAL (#wikimedia-operations) [2020-04-13T15:56:12Z] <marostegui> Deploy schema change on s4 codfw master - T250067

codfw fixed:

root@cumin1001:/home/marostegui# mysql.py -hdb2099:3314 testcommonswiki -e "show create table user_newtalk\G"
*************************** 1. row ***************************
       Table: user_newtalk
Create Table: CREATE TABLE `user_newtalk` (
  `user_id` int(10) unsigned NOT NULL DEFAULT '0',
  `user_ip` varbinary(40) NOT NULL DEFAULT '',
  `user_last_timestamp` varbinary(14) DEFAULT NULL,
  KEY `un_user_id` (`user_id`),
  KEY `un_user_ip` (`user_ip`)
) ENGINE=InnoDB DEFAULT CHARSET=binary ROW_FORMAT=COMPRESSED

s4 eqiad testcommonswiki:

  • labsdb1012
  • labsdb1011
  • labsdb1010
  • labsdb1009
  • dbstore1004
  • db1138
  • db1125
  • db1121
  • db1103
  • db1102
  • db1097
  • db1091
  • db1084
  • db1081
Marostegui claimed this task.

All done:

root@cumin1001:/home/marostegui# ./section s4 | while read host port; do echo "$host:$port"; mysql.py -h$host:$port testcommonswiki -e "show create table user_newtalk\G" | egrep "un_user_id" ; done
labsdb1012.eqiad.wmnet:3306
ERROR 1146 (42S02) at line 1: Table 'testcommonswiki.user_newtalk' doesn't exist
labsdb1011.eqiad.wmnet:3306
ERROR 1146 (42S02) at line 1: Table 'testcommonswiki.user_newtalk' doesn't exist
labsdb1010.eqiad.wmnet:3306
ERROR 1146 (42S02) at line 1: Table 'testcommonswiki.user_newtalk' doesn't exist
labsdb1009.eqiad.wmnet:3306
ERROR 1146 (42S02) at line 1: Table 'testcommonswiki.user_newtalk' doesn't exist
dbstore1004.eqiad.wmnet:3314
  KEY `un_user_id` (`user_id`),
db2119.codfw.wmnet:3306
  KEY `un_user_id` (`user_id`),
db2110.codfw.wmnet:3306
  KEY `un_user_id` (`user_id`),
db2106.codfw.wmnet:3306
  KEY `un_user_id` (`user_id`),
db2099.codfw.wmnet:3314
  KEY `un_user_id` (`user_id`),
db2095.codfw.wmnet:3314
ERROR 1146 (42S02) at line 1: Table 'testcommonswiki.user_newtalk' doesn't exist
db2091.codfw.wmnet:3314
  KEY `un_user_id` (`user_id`),
db2090.codfw.wmnet:3306
  KEY `un_user_id` (`user_id`),
db2084.codfw.wmnet:3314
  KEY `un_user_id` (`user_id`),
db2073.codfw.wmnet:3306
  KEY `un_user_id` (`user_id`),
db1138.eqiad.wmnet:3306
  KEY `un_user_id` (`user_id`),
db1125.eqiad.wmnet:3314
ERROR 1146 (42S02) at line 1: Table 'testcommonswiki.user_newtalk' doesn't exist
db1121.eqiad.wmnet:3306
  KEY `un_user_id` (`user_id`),
db1103.eqiad.wmnet:3314
  KEY `un_user_id` (`user_id`),
db1102.eqiad.wmnet:3314
  KEY `un_user_id` (`user_id`),
db1097.eqiad.wmnet:3314
  KEY `un_user_id` (`user_id`),
db1091.eqiad.wmnet:3306
  KEY `un_user_id` (`user_id`),
db1084.eqiad.wmnet:3306
  KEY `un_user_id` (`user_id`),
db1081.eqiad.wmnet:3306
  KEY `un_user_id` (`user_id`),