[00:50:21] With the recent replication changes, do we still need to connect to multiple slices for crosswiki queries or will all wikis be accessible from any slice? [02:15:10] Pathoschild: its about the same as the toolserver used to be [02:15:28] there are no more _f_p tables [02:16:10] So we still need one connection per slice to query every wiki, then. [02:17:12] Pathoschild: its one connection per cluster [02:17:28] S1 S2.... [02:19:53] Yep. [02:20:41] Thanks. :) [02:58:37] 3Wikimedia Labs / 3Infrastructure: Database upgrade MariaDB 10: Engine / Option mismatch on table `user_properties` - 10https://bugzilla.wikimedia.org/68942#c2 (10Sean Pringle) https://mariadb.atlassian.net/browse/MDEV-5867 [03:05:04] O_O [03:10:51] 3Wikimedia Labs / 3Infrastructure: Database upgrade MariaDB 10: Engine / Option mismatch on table `user_properties` - 10https://bugzilla.wikimedia.org/68942#c3 (10Sean Pringle) Have applied on labsdb replicas: SET GLOBAL SQL_MODE=IGNORE_BAD_TABLE_OPTIONS; This will only help when loading dumps that include... [03:26:08] 3Wikimedia Labs / 3deployment-prep (beta): beta labs not responding; API shows 503 from varnish - 10https://bugzilla.wikimedia.org/68574#c7 (10Brett Simmers) 5NEW>3ASSI a:3Brett Simmers I'm working on this. I'm pretty sure it's a bug in hhvm's fastcgi server. [04:33:03] beta labs still not responding [05:14:24] spagewmf: yeah it's hhvm having a bad time. I've figured out the issue but don't know when I'll be able to have a fix [05:14:30] in the meantime, I'll restart hhvm on the beta servers [05:17:31] !log deployment-prep restarted hhvm on deployment-mediawiki0{1,2} to unwedge them [05:17:34] Logged the message, Master [08:53:04] !log deployment-prep rebuilt and restarted hhvm on deployment-mediawiki02 with potential fix [08:53:06] Logged the message, Master [09:07:29] Connecting to labsdb (e.g. host 192.168.99.3) does not work from i-00000325.eqiad.wmflabs, while it works from i-00000125.eqiad.wmflabs. [09:07:53] Some software on i-00000325.eqiad.wmflabs went wild before and mass connected to the database, [09:08:30] is there some automatic per-IP rate-limiting in place that [09:08:47] would exclude the previously misbehaving instance? [09:53:06] qchris: Sorry for the noise. The i-00000325.eqiad.wmflabs was missing DNATs. Can connect now again. [10:02:07] 3Wikimedia Labs / 3Infrastructure: Database upgrade MariaDB 10: Engine / Option mismatch on table `user_properties` - 10https://bugzilla.wikimedia.org/68942#c4 (10metatron) Thanks. In addition I've set up a regex to filter this mismatch. This was mainly for https://tools.wmflabs.org/tools-info/optimizer.php... [11:53:07] springle, ping [11:53:31] @seen spagewmf [11:53:31] Cyberpower678: I have never seen spagewmf [11:53:33] @seen spagewmf [11:53:33] Cyberpower678: spagewmf is in here, right now [11:53:42] spagewmf, have a moment? [12:53:37] 3Wikimedia Labs / 3tools: Install Linux kernel AIO access library: libaio (libaio1) - 10https://bugzilla.wikimedia.org/68615 (10metatron) 5PATC>3RESO/FIX [14:58:40] 3Wikimedia Labs / 3tools: Install package: python-pygments (syntax highlighting) - 10https://bugzilla.wikimedia.org/69050 (10metatron) 3UNCO p:3Unprio s:3normal a:3Marc A. Pelletier Pls. install ubuntu package python-pygments (syntax highlighting) http://packages.ubuntu.com/precise/python-pygments [16:03:28] I'm seeing some random, apparently transient DNS strangities in Tools logs, e. g. 'server host resolves rdata host "tools-master" as "tools-master.eqiad.wmflabs"' (14:18Z), "unable to resolve host tools-webproxy.eqiad.wmflabs" (9:41Z), etc. Is the DNS server well? [16:36:14] !log tools Manually rerouted mails for tools.mybot@tools-submit.eqiad.wmflabs [16:36:16] Logged the message, Master [16:39:32] !log tools tools.mybot's crontab uses qsub without -M, added that as a temporary measure and will inform user later [16:39:34] Logged the message, Master [16:44:43] scfc_de: No need to inform the user, it’s me :P [16:51:09] ialex: Ah, okay :-). Well, you see in the crontab what I added. You could also use jsub which does this automatically. [16:52:51] scfc_de: yup, thanks :) [16:53:00] hello ialex [16:53:07] Nemo_bis: hey [16:53:28] so you stalk "mybot"? :D [16:55:09] Nemo_bis: well, it’s *my* bot :D [16:59:30] ;) [18:00:47] legoktm, I responded to the talk. You can answer either there or here. :-) [18:00:54] oh hey [18:01:20] > I edit a flow board on dewiki. Will that edit show up on enwiki? [18:01:26] the answer is "it depends" [18:01:44] On what? [18:01:46] some flow discussions will be only on one wiki, and some will be cross-wiki [18:02:27] And say I wanted to count the flow edits made on enwiki, whether the board is cross wiki or not? How can that be done? [18:02:31] (I think, I'm not really on the Flow team anymore) [18:02:39] I'm not sure [18:02:49] most of the cross-wiki functionality hasn't been developed yet [18:03:03] I guess I have to push back development of the flow counter a bit. [18:03:48] legoktm, Are you good with JS. Different topic. [18:04:12] not really. I can hack my way around it if necessary though [18:04:27] :p [18:04:50] Thanks [18:05:34] Cyberpower678: around? [18:05:42] Yes [18:05:58] Cyberpower678: pm? [18:14:08] !ping [18:14:08] !pong [18:21:32] can i use scp to transfer files from tools lab to my computer? [18:24:16] !Ping [18:24:18] !ping [18:24:18] !pong [18:24:24] rohit-dua: yeah, you should be able to [18:25:06] is something like this correct: scp -r rohit-dua@tools-login:/data/project/bub/public_html/BUB /home/rohit/Desktop [18:25:56] I get a Permission denied (publickey,hostbased). [18:26:18] rohit-dua: roht-dua@tools-login.wmflabs.org? [18:26:26] rohit-dua: also hmm, I am unsure :| can you ssh in normally? [18:30:22] YuviPanda: scp -r rohit-dua@tools-login.wmflabs.org:/data/project/bub/public_html/BUB /home/rohit/Desktop gives Connection timed out. yes i'm able to ssh normally. [18:30:58] rohit-dua: uh, I'm not sure :| [18:34:10] YuviPanda: got it. my connection issue.:p [18:34:22] rohit-dua: ah :) [19:03:37] 3Wikimedia Labs / 3tools: install GD perl lib - 10https://bugzilla.wikimedia.org/67199#c1 (10Andre Klapper) s:5blocke>3normal Hi Aka, could you please elaborate what this is needed for, and what's the usecase? > currently it does'nt find the GD package. Pasting the output is welcome. [19:47:06] !ping [19:47:06] !pong [19:59:15] YuviPanda: Hi, seen the new *fancy* Labs SQL Optimizer? :-)  [19:59:27] hedonil: saw the email, IS AWESOME [19:59:34] hedonil: where are you running these? [19:59:44] YuviPanda: now waitung for your quarry to complete the SQL suite! [19:59:50] hedonil: :D [20:00:05] hedonil: can I see the source? :) [20:00:07] YuviPanda: Where? right here on labs [20:00:19] hedonil: oh? I thought you couldn't run 'EXPLAIN' queries? [20:00:33] YuviPanda: Haha [20:00:41] YuviPanda: we are hackerz [20:00:46] iseez :) [20:00:48] ;-) [20:00:53] hence asking for source :) [20:00:59] sec [20:01:10] did you setup a db with some imported data and run explain on that? [20:01:30] or are you running on the non-censored databases? >:) [20:02:02] YuviPanda: main parts are: /data/project/tools-info/create-optimizer-db.sh [20:02:12] valhallasw`cloud: heh :) [20:02:21] any news if the copying of the Wikidata dumps has been done ... [20:02:41] YuviPanda: and /data/project/tools-info/public_html/optimizer.php [20:03:28] hedonil: the php is not readable [20:03:38] valhallasw`cloud: oh [20:03:52] hedonil: no +x on public_html for 'everyone' [20:04:04] ? it's 664 [20:04:10] GerardM-: no news, and I don't think we'll get any until Wikimania [20:04:20] hedonil: 774 [20:04:26] should be 775 [20:04:38] I really need the statistics so that I can prepare my presentation [20:04:47] valhallasw`cloud: better? [20:05:06] drwxrwsr-- 5 tools.tools-info tools.tools-info 4096 Aug 1 04:33 public_html/ [20:05:18] ah [20:06:55] now it should be ok [20:07:09] * YuviPanda guesses it's running the query with some sort of sleep and then using show analayze [20:07:58] YuviPanda: no, it's a set of custom databases based on running schemas [20:08:04] ah :D [20:08:36] hedonil: springle was suggesting we setup a labsdb machine that contains 'snapshots' of the views, dumped once a week or something [20:08:40] should provide accurate EXPLAINs [20:09:41] YuviPanda: anything that works is welcome [20:09:57] hedonil: indeed, and you've created the first one that works. YAY! [20:10:41] YuviPanda: if springle provides snapshots, we have already a GUI for that ... ;-) [20:10:45] :D [20:10:47] indeed [20:11:06] hedonil: I might integrate this into quarry at some point into the future. Until then, I'll just link to the tool from the UI [20:12:33] YuviPanda: my thoughts! if quarry is operational + you have a repo + springle provides the snapshots we can work on that together! [20:12:46] hedonil: yay :) [20:12:55] hedonil: quarry is kinda operational now, you can run queries, etc. [20:12:58] hedonil: am tuning it over the weekend [20:13:40] hedonil: quary repo is on gerrit, btw. analytics/quarry/web [20:19:13] YuviPanda: ah analytics! my friends :P [20:19:17] hehe [20:19:20] hedonil: :D [20:20:50] YuviPanda: I just submitted a patch https://gerrit.wikimedia.org/r/#/c/151295/ [20:21:51] YuviPanda: so thaht this syntax highlighting will be available and everything can be written in python [20:21:51] Don't we have now EXPLAIN functioning for running queries? [20:22:21] scfc_de: yep It's SHOW EXPLAIN [20:22:37] but you have to be fast, sometimes [20:23:09] Well, if it's too fast to catch it, no need to do optimization?! [20:23:59] scfc_de: and one of the crucial parts of this tool is to provide the running definitions / indices / sanitized views at a glance [20:25:08] fresh, no outdated references ! ;-) [20:25:15] scfc_de: indeed, sometimes you want to plan, tweak and then execute :D [20:25:45] YuviPanda: or play around a bit... [20:26:46] yeah [20:46:55] !ping [20:46:55] !pong [20:49:28] hedonil: re: your patch, I updated the commit messages. we try to keep them not more than 80chars per line :) [20:50:01] YuviPanda: Just saw it ; [20:50:28] hedonil: also the 'prefix' would be the module this was updating, in this case 'tools' [20:51:06] YuviPanda: btw. I recall Krinkle (and his message documentation guide) "bytes are cheap - use them" :P [20:51:22] hehe [20:51:29] halfak: :D indeed. just not on the same line :D [20:51:32] err [20:51:33] hedonil: ^ [20:51:48] hedonil: "Your commit message is not too large until it causes someone's computer to swap" [20:51:49] :P [20:52:08] YuviPanda: just make your commit message call git gc --aggressive :-p [20:52:12] Yep. Subject line < 80. Other lines wrap between 80-100 and write clearly and all you like. There's no need to worry about the length. A reviewer might trim it down if it seems appropiate. [20:52:42] valhallasw`cloud: hehe [20:53:01] Krinkle: you still have the record for commit message length vs patch length, don't you? :) [20:59:47] Krinkle: btw. thanks for your git /gerrit guides, for me this is like a candle in the dark :-D [20:59:59] \o/ [21:00:09] hedonil: puppet is fun when you get used to it :) [21:00:38] YuviPanda: ...and to be *mingy* the modul is called toollabs :P [21:00:53] hedonil: heh, true, but we've used tools as prefix all the time so far [21:01:11] YuviPanda: tsstsstss [21:02:03] :) [21:02:10] some people use toollabs too [21:02:11] Obey the rules! or make your own ones :P [21:02:12] I think either is ok [21:02:19] Ha! [21:02:40] valhallasw`cloud: btw, I switched to halfak's MWOauth library [21:03:01] valhallasw`cloud: mostly because I initially thought there was a unicode bug in yours, and then it turned out to be in mine :| [21:03:10] valhallasw`cloud: also it has py3 compatibility, and I intend to switch at some point soon [21:03:52] * halfak is meaning to submit a pull request to add mwoauth to flask-mwoauth [21:04:40] That is the *only* library where I tried to support python 2 and 3. [21:04:43] * halfak shivers [21:04:47] not worth it. [21:04:48] heh [21:05:16] halfak: I'll probably switch quarry to py3 once everything else stabilizes [21:05:39] Hokay. Always easier to start on 3 though. [21:06:01] I just took a flying leap about 6 months ago. I took some flack for not supporting 2 for a while. [21:06:31] halfak: yeah, I did, and then found that weird bug I filed on your mwoauth library, and had to go back to 2, and now I can go back, except I've to find out how to package the libraries I'm using for py3 [21:06:34] they all support py3 [21:07:01] YuviPanda, I still haven't had the actual error message for that :P [21:07:06] Also, i can't replicate it. [21:07:13] halfak: yeah, because when I put mwoauth back it just worked [21:07:28] hmm. I'm gonna close that bug. [21:07:32] halfak: ya [21:08:43] halfak: also, YGM [21:08:50] YGM? [21:09:03] halfak: ah, You've got mail [21:09:12] halfak: I picked it up from Oliver, and presumed it was well known [21:09:57] {{YGM}} [21:10:25] heh [21:10:32] Ahh! I would have got it if you put the brackets in. [21:10:37] I like to {{done}} things. [21:10:50] You may see {{done}} appear in my Markdown. [21:10:54] * halfak shrugs [21:10:57] indeed, I like {{done}} too [21:22:35] YuviPanda: Haha, yeah, I think I do. [21:22:39] (hold that record) [21:22:42] :) [21:22:47] Though i wasn't aware of it when I reached it. [21:22:52] Any particular one you have in mind? [21:23:06] hedonil: Thanks, that's nice to hear. [21:27:00] yeah, would be good to merge mwoauth and flask-mwoauth [21:27:31] might not be trivial, though, as flask-mwoauth depends on flask-oauth [21:28:23] Krinkle: not sure, Nemo_bis dug it up [21:28:35] valhallasw`cloud: no reason for flask-mwoauth to depend on flask-oauth tho [21:28:50] valhallasw`cloud: I got it on quarry pretty easily, should be not too hard to just turn that into a blueprint [21:28:57] YuviPanda: not necessarily, but flask-oauth does the grunt work :-p [21:29:05] I basically only changed url's [21:29:37] * Nemo_bis doesn't remember anything [21:32:32] valhallasw`cloud, hard to comment without digging in, but mwoauth should do all of the lifting. You'll need to manage tokens inbetween page loads. That's the hardest bit. [21:32:42] I assume there's a session thingie in flash-mwoauth [21:32:47] yeah [21:33:08] Docs: https://pythonhosted.org/mwoauth/ [21:33:18] is either of you at the hackathon next week? [21:33:26] I'll be there [21:33:28] :) [21:34:57] valhallasw`cloud: me too [21:35:27] halfak: I'm confused -- how would I POST something using your library? do I need to do request signing etc myself? [21:37:04] I'm not sure what you mean. Are you talking about after you have the access token? [21:37:27] yes [21:37:32] Check this out: https://github.com/wikimedia/MediaWiki-OAuth/blob/master/examples/request-oauthlib.py [21:37:58] There, I use the access token to construct a Auth1() for requests to make use of. [21:38:11] I see [21:38:41] yeah, and you can expose the underlying 'requests' instance to the users as well if you want, so they can customize requests if they want [21:39:06] Boo. I don't want people to know that I'm using requests on the inside. [21:39:23] So that I can change the underlying lib without causing issues. [21:39:56] * halfak realized YuviPanda might me talking about flask-mwoauth [21:40:11] halfak: yeah [21:40:12] I am [21:40:21] I think flask-oauth uses urllib2, actually [21:40:30] requests ftw instead :) [21:40:33] :) [21:40:46] flask-/oauth/. [21:40:57] not exactly within my control :-p [21:41:12] valhallasw`cloud: indeed, so the proposal is to switch flask-*mw*oauth to use halfak's mwoauth and request-oauthlib [21:41:19] uhuh [21:41:47] I don't think it should be too much work, and can do the legwork sometime after wikimania if you won't have the time - provided you're open to merging it, of course [21:43:44] YuviPanda: should be possible without changing the outward-facing API, so I'm all for it [21:43:50] valhallasw`cloud: wheee [21:45:19] the only issue is that I have completely forgotten how it works :-p [21:47:36] Woo! [21:47:58] * halfak is stoked about consolidating on solving MW Oauth weirdness in one stop instead of two. [21:48:13] e.g. that identify() call. [21:48:31] Sat down with milimetric and csteipp to make sure all the critical checks were in place. [21:49:07] halfak: what does wikimetrics use? [21:49:35] valhallasw`cloud: heh :) [21:49:47] wikimetrics is using a custom fork of flask-mwoauth right now [21:49:51] heh [21:49:58] oh god :P [21:50:08] It incorporates all of the nonsense we worked out in mwoauth into flash-mwoauth [21:50:13] heh [21:50:15] heheh [21:50:19] But it predated mwoauth [21:50:23] so it's not that bad. [21:50:41] I'm glad I don't have to do this :| I still don't fully understand the underlying protocol, but 'tis ok [21:51:21] YuviPanda, https://www.mediawiki.org/wiki/Extension:OAuth/Usage [21:52:01] I know, just haven't had the time to read thrugh it fully :D [21:52:15] the basic concept it simple :-p the actual protocol in practice, though, with signing the right bits of information at the right time... [23:35:06] !ping [23:35:06] !pong