[15:15:20] Is there a known issue with being unable to login on production wikis? Maybe it's just me but it's rejecting my password as well as not accepting the pwd from a pwd reset. [15:19:56] AFAIK no [15:20:02] Unless you have a really crappy password [15:20:23] Krinkle: Any wiki in particular? [15:22:38] Sigh. T233221 makes me sad. [15:22:38] T233221: update.php needs to drop both archive.usertext_timestamp and archive.ar_usertext_timestamp, if they exist, on MySQL - https://phabricator.wikimedia.org/T233221 [15:24:14] :( [15:37:28] Reedy: mw.org and enwiki [15:37:58] I also got unexpectedly logged out everywhere, which is why I'm trying this at all [15:39:33] OK, after 2x a 5min timeout it works now [15:47:01] :/ [15:48:05] Please ping me if you get any further issues [17:11:06] Anyone got any ideas why some session code works fine on all wikis except on testwiki? Where on testwiki, it's an empty array that comes out of the session on the next page load... When an array wasn't being set? [20:23:19] Reedy: testwiki (only) is using kask for session storage. T222099. [20:23:20] T222099: Staging release of RESTBagOStuff using Kask - https://phabricator.wikimedia.org/T222099 [20:25:30] Aha [20:25:46] That could explain it. And might mean we found a bug then [20:27:10] Possibly. To my knowledge, nothing has changed there code-wise in a few weeks, while Eric Evans has been doing performance investigation. [20:27:22] urandom: FYI [20:27:26] It’s possible it’s been broken a while [20:27:38] We had another breakage seemingly only on testwiki [20:28:02] https://phabricator.wikimedia.org/T231786 [20:28:08] Dating back to the start of September [20:28:33] I suspect, in most cases, people wouldn’t be enabling 2FA on testwiki... so it’s a rarely used combo [20:29:20] Should I leave a comment on the Kask task? [20:29:36] Yes, please [20:31:25] Thanks for pointing it out bpirkle :) [21:34:29] Hm.. [21:34:41] why does Maintenance::getOption modify the options array [21:34:49] "Set it so we don't have to provide the default again" [21:35:06] that must be one of the most unexpected microptimisations I've seen to date [21:35:27] changes the result for future callers [21:35:33] getOption('foo', false) === false [21:35:40] getOption('foo', 0) === false # wat