Page MenuHomePhabricator

Deploy LoginNotify seen subnets table
Closed, ResolvedPublic

Description

  • Create the table on x1 and on private (non-CentralAuth) local wikis.
  • Configure and enable with $wgLoginNotifyUseSeenTable = true, $wgLoginNotifyUseCheckUser = true.
  • Wait 90 days for the new tables to be sufficiently populated.
  • Set $wgLoginNotifyUseCheckUser = false.

Event Timeline

for consistency it is probably good to have empty local tables on CentralAuth wikis.

I disagree:

  • Each table creates two file in the database, in s3 that translates to 2000 more files to backup, to show up in lists and checks and that was one of the reasons we switched new wikis to s5. We have way too many files we are holding in s3.
  • It can lead to silent failures, if by a bug, the wiki starts reading from local db, it would think things are fine, otherwise it'll fatal.

for consistency it is probably good to have empty local tables on CentralAuth wikis.

I disagree:

Fine, updated.

Mentioned in SAL (#wikimedia-operations) [2023-10-13T03:08:44Z] <TimStarling> on x1 wikishared, created loginnotify_seen_net table T346989

Mentioned in SAL (#wikimedia-operations) [2023-10-13T03:20:31Z] <TimStarling> on non-CentralAuth wikis, created the loginnotify_seen_net table T346989

[0307][tstarling@mwmaint2002:~]$ sql --wiki=enwiki --cluster=extension1 --write
wikiadmin2023@10.192.32.134(enwiki)> use wikishared
...
wikiadmin2023@10.192.32.134(wikishared)> \. /srv/mediawiki-staging/php-1.41.0-wmf.30/extensions/LoginNotify/sql/mysql/tables-generated.sql 
Query OK, 0 rows affected (0.009 sec)
'wmgUseCentralAuth' => [
	'default' => true,
	'private' => false,
	'fishbowl' => false,
	'nonglobal' => false,
],
[0317][tstarling@mwmaint2002:~]$ expanddblist 'private + fishbowl + nonglobal' | wc -l
58
[0317][tstarling@mwmaint2002:~]$ for w in $(expanddblist 'private + fishbowl + nonglobal'); do echo $w; sql $w --write < /srv/mediawiki-staging/php-1.41.0-wmf.30/extensions/LoginNotify/sql/mysql/tables-generated.sql ; done
advisorswiki
amwikimedia
arbcom_cswiki
arbcom_dewiki
arbcom_enwiki
...
labtestwiki
ERROR 1045 (28000): Access denied for user 'wikiadmin2023'@'mwmaint2002.codfw.wmnet' (using password: YES)
Failed.
...

The error on labtestwiki is T328289. If it's not a production database, it shouldn't be in the production dblists.

Change 965620 had a related patch set uploaded (by Tim Starling; author: Tim Starling):

[operations/puppet@production] Add LoginNotify cron job

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

Change 965663 had a related patch set uploaded (by Tim Starling; author: Tim Starling):

[operations/mediawiki-config@master] Enable LoginNotify seen subnets table

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

Change 965620 merged by Tim Starling:

[operations/puppet@production] Add LoginNotify cron job

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

Change 965663 merged by jenkins-bot:

[operations/mediawiki-config@master] Enable LoginNotify seen subnets table

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

Change 976177 had a related patch set uploaded (by Tim Starling; author: Tim Starling):

[operations/mediawiki-config@master] Reapply "Enable LoginNotify seen subnets table""

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

Change 976177 merged by jenkins-bot:

[operations/mediawiki-config@master] Reapply "Enable LoginNotify seen subnets table""

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

Mentioned in SAL (#wikimedia-operations) [2023-11-22T00:55:15Z] <tstarling@deploy2002> Synchronized wmf-config/CommonSettings.php: enable LoginNotify seen subnets table g965663 T346989 (duration: 06m 23s)

Change 1004788 had a related patch set uploaded (by Tim Starling; author: Tim Starling):

[operations/mediawiki-config@master] Set $wgLoginNotifyUseCheckUser = false

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

Change 1004788 merged by jenkins-bot:

[operations/mediawiki-config@master] Set $wgLoginNotifyUseCheckUser = false

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

Mentioned in SAL (#wikimedia-operations) [2024-02-20T02:15:12Z] <tstarling@deploy2002> Synchronized wmf-config/CommonSettings.php: Set $wgLoginNotifyUseCheckUser = false T346989 (duration: 08m 13s)

tstarling updated the task description. (Show Details)