[04:18:09] * bd808 grumbles about mw-vagrant not sending emails out of the box [04:18:36] https://en.wikipedia.org/wiki/Jamie_Zawinski#Zawinski.27s_law_of_software_envelopment [04:18:52] "Every program attempts to expand until it can read mail." [04:20:45] ...drupal can read mail? [04:21:17] legopanda? I have no idea who's who [04:21:40] YuviKTM isn't in this channel :( [04:21:44] https://www.drupal.org/project/basic_webmail [04:22:11] huh. [04:22:45] it's a bit dated [04:22:52] the law, i mean [04:23:07] now I want pizza and goth music [04:23:26] heh [04:23:55] no good pizza and goth music joints up here in Petaluma, we're obviously lacking. [04:24:04] We have Leo Laporte (ughhh) [04:29:12] greg-g: i thought you'd enjoy this quote from http://www.nytimes.com/2015/05/03/magazine/want-a-steady-income-theres-an-app-for-that.html?emc=edit_tnt_20150429&nlid=66702700&tntemail0=y&_r=0 [04:29:43] "Yet the Even founders have become something rare: innovators for the less fortunate in a Bay Area technology scene full of people who variously ignore America’s historic level of inequality, worsen it with their real ­estate purchases or “leverage” it when they realize that the losers of the new world order they’re building can at least be their Uber drivers, Instacart grocery deliverers and Homejoy toilet scrubbers." [04:29:58] :) [04:31:47] "Even’s founders want to [04:31:47] take the human disruption [04:31:47] caused by disruption [04:31:49] and, well, disrupt it." [04:31:59] bah, bad paste, but still, hilarious quote [04:34:10] now we just need something to redistribute illness evenly to offset the lack of reliable access to healthcare [04:34:19] that way you're always a little sick but never severely [12:35:31] AaronSchulz, you there? [12:36:07] Is there supposed to be around 10 million refreshLink jobs queued on enwiki? [15:33:48] bd808: If you want to get https://gerrit.wikimedia.org/r/#/c/207332/ out right away, there's still time in this morning's SWAT window [15:34:30] anomie: it will need a full scap and backports of 2 extensions to 2 branches :/ [15:34:53] bd808: Oh, there's not that much time then [15:34:57] yeah [15:35:11] Since full scap takes around 40 minutes [15:35:20] I talked to Stephen and he was cool with it not going live this week [15:36:00] I'll keep it moving, probably by just backporting to wmf4 [15:36:27] thinking about how to take care of the css better (RL module somewhere and hook to load it) [15:37:32] I'd say WikimediaMessages, even though that stretches the definition somewhat. [15:37:41] yeah [15:38:19] legoPanda suggested using the BeforePageDisplay hook, but I think a new hook in ContactPage would be cleaner [15:38:39] might as well make it all signing and all dancing [15:39:38] 'EmailUserForm' hook. Or put "Load these RL modules" as another thing in ContactPage's config array. [15:39:44] * anomie likes the latter [15:40:07] oh that would be nifty [15:40:13] config loading [17:04:34] <^d> bd808: In Setup.php [17:04:37] <^d> -$wgUser = RequestContext::getMain()->getUser(); // BackCompat [17:04:37] <^d> +$wgUser = User::newFromSession( RequestContext::getMain()->getRequest() ); [17:04:37] <^d> +RequestContext::getMain()->setUser( $wgUser ); [17:04:41] <^d> I tried that ^ [17:05:02] <^d> Definitely didn't fix it. [17:05:27] <^d> Although maybe it went down in frequency? [17:39:49] !log sync-common on snapshot1004 failed after 33 minutes with rsync timeout [17:41:24] bd808: wrong channel ;) [17:41:34] thx [18:14:39] <^d> 4 hours and I got 1 non-working patch for this. [18:14:43] * ^d headdesks [18:34:24] AaronSchulz: yt? [18:41:30] ori, yes [18:45:33] legoPanda: Can I assume you already tested https://gerrit.wikimedia.org/r/#/c/207522/ locally? [18:46:15] "legoPanda", haha [18:46:47] anomie: yes [18:46:57] ok, +2ed [18:46:59] AaronSchulz: someone confused him for me yesterday, so we're making it easier for people :) [18:47:02] ty :D [18:55:10] Are you two intentionally trying to type more like each other too? [18:55:17] AaronSchulz: pm [18:55:23] I thought I wasn't confused before. But now I think I am. [19:20:45] ^d, who is Liuxinyu970226 ? [19:21:32] <^d> AaronSchulz: Good question. He stalks me on Phab [19:21:57] no, he just watches everything on phab [19:29:31] he loves subscribing to and unsubsribing from things [19:31:34] <^d> Hey everyone's got their hobbies [19:37:35] not judging [19:37:47] * AaronSchulz looks at updateMetadataOnBlockChange in PageTriage and is confused [19:38:03] 'ptrpt_tag_id' => $tags['user_name'] [19:39:36] ahh, I see [21:32:16] legoPanda, BadMethodCallException from line 196 of /srv/mediawiki/php-1.26wmf3/extensions/CentralAuth/includes/specials/SpecialGlobalRenameQueue.php: Call to a member function isAttached() on a non-object (boolean) [21:37:40] * legoPanda looks [21:41:44] um what [21:51:56] AaronSchulz: https://gerrit.wikimedia.org/r/207999 turns it into an exception instead of a fatal [21:52:09] bd808: ^ [21:52:44] how the hell could that happen? [21:53:10] they'd have to be assigned a new user id [21:53:27] legoPanda: {{done}} you wanna take care of deploying? [21:53:30] like deletion of the global [21:53:31] but, [21:53:40] the one case I looked at from the logs was totally fine [21:54:52] hmmm, global user merge, but that's not running in prod yet [21:55:57] <^d> bd808: jessie ships 1.0.x? How completely dated and useless. [21:56:15] https://phabricator.wikimedia.org/T97718 [21:57:25] ^d: inorite? [22:01:44] <^d> bd808: Which are you gonna use for logstash? [22:01:54] <^d> battle-tested 1.3.x or something newer? [22:02:55] ^d: I's prefer to stay in sync with the prod cluster [22:03:01] *I'd [22:03:09] <^d> Makes sense. [22:03:21] <^d> I used the word battle-tested for a reason :) [22:03:50] <^d> Give it about 5 more years and it'll be just like mysql 4.forever :) [22:04:07] bd808: I'm going to put it in swat [22:04:30] <^d> I miss the forever version of mysql4 :p [23:03:43] <^d> AaronSchulz: Lots of UPDATE /* User::incEditCountImmediate Fooooooooo */ `user` SET user_editcount=user_editcount+1 WHERE user_id = 'N' [23:04:03] <^d> Tripping slowtimer [23:04:35] <^d> Same user also tripping User::loadFromDatabase [23:07:03] is that not the real username? [23:07:06] https://meta.wikimedia.org/wiki/Special:CentralAuth/Fooooooooo [23:25:24] <^d> No [23:25:28] <^d> I obfuscated [23:26:36] <^d> JotaCartas, uid 556830 if that helps [23:29:36] https://commons.wikimedia.org/wiki/Special:Contributions/JotaCartas lots of rapid editing? [23:29:49] and they're all trying to update the same row? [23:44:04] AaronSchulz: I'm not usually one to insist on (or even suggest) applying OOP patterns indiscriminately, but the way python-cache-relay has the same interface implemented differently based on backend really begs an abstract interface class with concrete implementations [23:44:35] is there a reason you didn't do that? [23:46:24] i mean, it basically is what you did, except you didn't use the language's OOP facilities and rolled your own instead. this is dynamic dispatch: [23:46:26] def relay_cache_command(target, command, e_time): [23:46:26] if env.config['cache_type'] == 'memcached': [23:46:26] return relay_memcache_command(target, command, e_time) [23:46:28] elif env.config['cache_type'] == 'redis': [23:46:30] return relay_redis_command(target, command, e_time) [23:46:32] elif env.config['cache_type'] == 'cdn': [23:46:34] return relay_cdn_command(target, command, e_time) [23:47:11] 'class' is not a dirty word :P