[00:51:34] Hi [00:51:45] Anyone here know SQL? [00:53:29] Can this be ported to the tool labs database scheme? [00:53:30] https://wiki.toolserver.org/view/MySQL_queries#List_of_interwiki_links_from_all_wikis [02:05:20] :( we hit the max database connection problem with wikimetrics again [02:05:32] anyone around that can help? It's definitely a problem and it just started happening a few days ago [02:05:54] so we'd like at least some information about the limits (what they are, what their scope is, etc.) [02:06:12] Coren, Thehelpfulone, anyone? ^^ [02:06:39] milimetric: Lemme see. [02:06:43] While it's ongoing. [02:06:48] u2543 [02:06:49] What database? [02:06:57] enwiki_p [02:08:14] max_user_connections is the thing I'm hitting [02:10:12] Hm. How insane. [02:10:36] Well, the reason why you hit the limit is because there is something that's currently stalling every user. I'm guessing it's effin catscan2 again. [02:10:47] So your connections just pile up in the queue. [02:11:04] But also, the limit is ridiculously low; it somehow got reverted to 10 per user. [02:11:53] some cron/backup would make sense as it got stalled at the same time yesterday [02:12:06] where can we see the ulimits? [02:12:13] thanks Coren :) [02:12:19] nuria is a new member of our team [02:12:32] she's helping me out [02:12:38] nuria - Coren, Coren - nuria :) [02:12:39] milimetric: I've unclogged the drain. [02:12:39] Ay sorry [02:12:42] * Coren waves. [02:12:42] i got carried away [02:12:50] i was looking at nuria@wikimetrics:~$ cat /etc/security/limits.conf [02:13:11] but the limits do not seem to be there [02:13:20] nuria: Database side. [02:13:47] milimetric: Your jobs should now be having more luck. [02:15:17] cool, thank you [02:15:31] nuria has some follow up questions to see if we can debug this ourselves in the future [02:15:34] (check the limits, etc) [02:15:37] Well they would be if the tables weren't locked by catscan2 [02:16:01] ah i see the db side is not local ok, dan just explained [02:16:14] can we ssh to the db hosts [02:16:59] nuria: Not unless you have root in prod. [02:17:06] ah i see [02:17:30] ok, so for us to call ops is ok then [02:18:07] thanks much [02:41:16] (03CR) 10Krinkle: "Intended to merge?" [labs/toollabs] - 10https://gerrit.wikimedia.org/r/70110 (owner: 10Platonides) [03:16:51] hi? [04:50:50] Hi all [04:51:37] arwiki_p.watchlist' doesn't exist [04:52:34] What's the solution? [17:09:28] (03PS1) 10MarkTraceur: Add additional awesome extensions to multimedia [labs/tools/grrrit] - 10https://gerrit.wikimedia.org/r/102712 [17:15:00] (03PS2) 10MarkTraceur: Add additional awesome extensions to multimedia [labs/tools/grrrit] - 10https://gerrit.wikimedia.org/r/102712 [17:21:59] (03CR) 10MarkTraceur: [C: 032] Add additional awesome extensions to multimedia [labs/tools/grrrit] - 10https://gerrit.wikimedia.org/r/102712 (owner: 10MarkTraceur) [17:22:30] !log tools deploying grrrit config change [17:22:32] Logged the message, Master [17:36:45] hey, is http://scribunto.wmflabs.org/ supposed to be down? [17:37:21] drdee, do you happen to know the project name for that? Is it just 'scribuntu'? [17:37:58] i guess, i was just following a link from mediawiki to play with lua / scribunto, so not sure which project it belongs to [17:38:23] Change on 12mediawiki a page Wikimedia Labs/Tool Labs was modified, changed by Valhallasw link https://www.mediawiki.org/w/index.php?diff=846127 edit summary: +move [17:38:41] drdee: Ah, so the instance is running but broken… that's outside my realm of influence :) [17:38:57] ok :) [17:39:04] Looks like that project is Tim Starlings jam [17:39:11] s//'/ [17:46:26] anomie, a quick Lua / Scribunto question: is it possible to get metadata for a wiki article, like date of most recent revision? [17:50:17] yes [17:50:52] drdee: https://www.mediawiki.org/wiki/Help:Magic_words#Technical_metadata {{REVISIONTIMESTAMP}} [17:50:53] drdee: I don't think so, except by using frame:callParserFunction or frame:preprocess with appropriate parser functions or magic words. [17:51:13] oh, not natively in lua [17:51:28] yup legoktm but thanks for your answe [17:52:38] thanks anomie i will look at that but it's sounds a bit complicated :( [19:51:14] (03PS1) 10coren: Package toollabs: add webservice [labs/toollabs] - 10https://gerrit.wikimedia.org/r/102740 [19:51:56] (03PS2) 10coren: Package toollabs: add webservice [labs/toollabs] - 10https://gerrit.wikimedia.org/r/102740 [20:10:06] Coren, https://wikitech.wikimedia.org/wiki/Nova_Resource:Tools/Help#Metadata_database notes there should be a database meta_p, but sql meta_p does not work [20:10:40] valhallasw: It exists on every shard, so sql's find-a-shard system for specific projects doesn't work. [20:10:51] ah! [20:11:11] but it doesn't exist on tools-db, where I checked first :-) [20:11:28] valhallasw: Well, that's not a production shard. :-) [20:11:31] sure :-) [20:11:44] (It wouldn't be a bad idea to stuff it there too, though) [20:11:47] I'll use nlwiki.labsdb, then [20:12:15] Thatworks; or you can connect to any s?.labsdb -- s3 is usually a good choice. [20:12:36] (That's the shard with all the smaller wikis, and tends to be the least busy) [20:13:00] ah, good idea [20:17:55] seems to behave oddly for me on Labs. More specifically, if I echo $command and run it as local-mytool, it works, but not straight from PHP (it uses absolute paths); and echo exec( 'whoami') returns nothing (false?). What am I doing wrong? [20:20:17] You'd need to exec('/usr/bin/whoami') [20:20:32] Ah, thank you. It's probably the same for the original $command [20:20:35] But also, not enough information to help; what is the exact $command? [20:20:46] Yeah, the executable's path must be fully qualified. [20:22:28] Coren: Do ya remember my 'little' database issue ? [20:22:47] hedonil: Refresh my memory? [20:23:05] Coren: Doesn't matter any longer. gave me the cause to build a faster and better tool. [20:23:12] * Coren chuckles. [20:23:37] Harder Better Faster Stronger? [20:24:00] Coren: yeah, yeah - but it doesn't mean this should happen on a regular basis [20:24:18] Do remind me of what the issue was? [20:24:39] Coren: whole slice purged [20:25:02] Oh! That! [20:25:06] * Coren facepalms. [20:25:18] eqiad will have automated backups of user DBs, if that's a consolation. [20:25:29] We got enough disk space there for it. [20:25:45] Coren: it's now even with tools name account [20:26:44] Coren: if you have any remnants of this database u3710__stats left, toss it in the bin [20:27:30] Coren: btw: [20:27:32] MariaDB [(none)]> drop database u3710__stats; [20:27:32] ERROR 145 (HY000): Table './mysql/proc' is marked as crashed and should be repaired [20:27:57] Ah, yes. I'll be able to do so from my end. [20:28:29] It's not so much "crashed" as "stuck between life and death in a grotesque revival attempt worthy of Dr. Frankenstein". [20:28:30] Coren: Is /usr/bin/rsvg-convert available on the web-facing boxes now? Perhaps it's not, that's where I've been going wrong... (see also bug #58516, thanks for that) [20:28:56] But I expect MYSQL doesn't have a specific error message for that. [20:29:18] Coren: ;) [20:30:03] Coren: btw[2]: puppet tools-dev: The last Puppet run was at Thu Sep 26 20:37:23 UTC 2013 (120951 minutes ago). [20:30:22] hedonil: Hm. I need to see what's up there. [20:31:23] jarry1250: Should be, provided puppet ran since. Lemme check. [20:31:32] just seeing characters like "MariaDB [(none)]> drop database" already raised blood pressure until i realized i was on labs, geez, need to calm down :) [20:32:37] mutante: Do you have an IRC ping on 'drop database'? [20:32:38] :-) [20:32:54] mutante: drop database is a command with strong emotions, no matter how long you are in business :) [20:32:59] hedonil: Someone --disabled puppet on tools-dev. Odd. [20:33:14] Coren: yes, i'm Bobby Tables :) [20:34:00] Coren: Asher had a stitched pillow with it on his desk! haha [20:34:07] hand made [20:35:50] Heh. :-) [20:37:30] my program works! yay, let's see for how long … [20:37:58] giftpflanze: another DNS DDOS? [20:37:59] weeks of trouble, can't believe it [20:38:15] nah [20:38:34] giftpflanze: ok then ;) [20:39:22] i split 5 million urls into 2 parts because i believed that would work. still lost a third of my results [20:39:36] now i split it into pieces of 1 million each [20:39:59] first went through [20:40:13] giftpflanze: what's the current rate of failed url's? [20:40:20] let's see [20:40:33] what do you mean by failed? [20:40:45] lost results or 404 and similar? [20:40:48] giftpflanze: not responsive [20:41:18] giftpflanze: 404 and such [20:41:24] you mean the server does not respond? that seems a weird question to me … ah [20:42:27] 14.8005% of unique urls [20:43:02] jarry1250: Yup, I see it everywhere. [20:43:41] Coren: Hmm. And would run as local-toolname? [20:44:11] jarry1250: Yes. [20:45:18] giftpflanze: what happens to those links? marked as dead? or fixed with archive link? [20:45:42] Coren: hrm, no database that contains localized namespace names? [20:45:56] valhallasw: i got one [20:46:00] i report them to talk pages [20:46:25] hedonil: :D where? [20:46:50] giftpflanze: In my new strong, fast & furious database [20:46:55] ;) [20:47:17] valhallasw: imported from all wikis via api-calls [20:47:26] pardon? [20:47:36] valhallasw: q.v. https://bugzilla.wikimedia.org/show_bug.cgi?id=48625 [20:47:52] giftpflanze: sorry, was for valhallasw ;) [20:47:58] ah [20:48:16] Which I should probably close. [20:49:30] giftpflanze: I remeber there was a request for a bot that fixes all dead links by automation with propper archive links [20:49:45] in dewiki? [20:49:47] Why? 'querying the API' is nontrivial, because that means you have to implement all kinds of caching, as well as http error handling [20:49:52] giftpflanze: yes [20:50:12] hedonil: and available on tool labs or...? [20:50:12] valhallasw: yes [20:50:13] can't remember that [20:50:27] hedonil: I would like a database and table name ;-) [20:51:18] valhallasw: it's p50380g50769__wvs on s6.lbasdb and table is l10n [20:51:50] hedonil: that's not accessible for other users -- the dbname needs to end with _p for that [20:52:05] anomie, does scribunto come with an html parser, something like https://github.com/wscherphof/lua-htmlparser, if not is that on the roadmap? [20:52:06] valhallasw: I can grant you access [20:52:16] sure [20:52:37] drdee: No, and no. [20:52:40] valhallasw: or better create a public database and put it into that [20:53:16] specific reason like security or performance? [20:54:07] Coren: is it feasible to add another table to meta_p? [20:54:12] valhallasw: 'curl http://en.wikipedia.org/w/api.php?action=query&meta=siteinfo&siprop=namespaces&format=json' is nontrivial? [20:54:38] Coren: and then do that for every web request? [20:54:54] It's certainly possible. [20:54:58] anomie: specific reason like security or performance? [20:55:25] valhallasw: It's certainly easier on resources than doing it to the DB; and almost certainly faster in the general case. Also, this gives you known correct information. [20:55:41] ok... [20:55:42] drdee: Because we don't want to cram it full of stuff that's not terribly likely to be used when rendering wiki pages, mostly. Why in the world would you need to parse HTML inside a template? [20:56:43] valhallasw: Although if your language has a 'fecth from url' thing you probably want to do that rather than invoke an external curl. [20:57:17] hedonil: Sure, what did you have in mind? [20:57:25] anomie: from a template POV it might not be so useful, but from a let's turn the wikipage into a smart document it would be very helpful [20:57:42] hedonil: With the caveat that whatever the content needs to be possible to generate from static configuration taken from git. [20:58:00] drdee: Wikipages aren't smart documents. They're parsed once and then served to users. [20:58:10] Coren: my suggestion: if you add such a namespace table I would provide a script to update this info on a daily basis [20:59:46] hedonil: I don't want to encourage the use of the database to replace what should be a simple hash table in the application. It's *horrid* for performance; it doubles index lookups, increases the size of datasets, and increases the chances of subtle bugs. Use namespace numbers when talking to the database, and convert at the UX layer only. [21:00:05] Coren: it's not that simple with api, because some languages offer key /and/ value in their own language [21:00:31] hedonil: Wait what? [21:01:00] hedonil: You can map namespace number -> namespace name from the API trivially regardless of project language. [21:02:01] anomie: but turning a wikipage into a smart document would not change the parsing once that would still happen -- it would make the wiki page just smarter by making it aware of the context and content on it's page which you can then manipulate. maybe i am day dreaming :) [21:02:03] "id" and "canonical" aren't i18n'ed. [21:02:06] * hedonil is looking for a good example [21:06:06] who can add an admin to betalabs? [21:06:23] yurik: Any other admin, normally. [21:06:50] hmm.. for some reason i'm not it :) [21:07:07] Coren, could you add me and bblack pls [21:07:16] (could be BBlack) [21:07:28] trying out new varnish [21:07:37] we are getting 3.0.5! [21:11:07] yurik: Remind be which project this is? deployment-prep? [21:11:14] yep [21:11:21] Coren, ^ [21:12:17] What's Brandon's Wikitech username? [21:12:22] it's bblack [21:12:30] or BBlack in WikiCase [21:12:48] where is this stuff anyways? I don't see it in the wikitech Labs stuff, things moved? [21:13:00] Huh, he wasn't even a project member. [21:13:18] yurik: {{done}} [21:13:29] Coren, thanks!!! [21:14:08] oh I see, I just didn't have rights to even see it in the list [21:14:11] now I do! [21:14:58] ok, we are about to upgrade varnish to 3.0.5+ alpha 01 by bblack on deployment-staging-cache-mobile02 and deployment-cache-mobile01 [21:15:14] i hope no puppies will die in the process [21:16:10] bblack, do you want me to try it? or would you rather do it? [21:28:41] Coren: took a few to rewrite the generator ;) http://tools.wmflabs.org/paste/view/7bb3fe70 langs: de / fr / ru [21:28:54] Coren: 1] keys (canonical) are mixed -> no absolute reference 2] potential keys (namespace numbers) congruent for all wikis, some exist some don't [21:29:06] Coren: or am I missing something? [21:29:37] Coren: *not congruent [21:32:48] Coren: eg. what's namespace 107 Обсуждение арбитража? [21:35:14] Coool. [21:35:22] tsreports is working \o/ [21:36:46] hedonil: That, actually, is exactly the reason /why/ a table would be a bad idea. There *is* no absolute reference; some namespaces only exist on some wikis, and the same number can mean completely different things on different wikis. [21:36:48] valhallasw: show example/url, or it didn't happen ;) [21:36:54] http://tools.wmflabs.org/tsreports/ [21:37:40] Coren: /that/ is an argument [21:38:00] hedonil: Amusing. I didn't ruwiki had an /arbitration/ namespace. [21:38:48] If Arbcom tried this on enwiki, the community would bring out the torches and pitchforks. "Abuse!!!!1!!" [21:39:11] (please wait for lighttpd to restart before testing tsreports ;-)) [21:39:39] Coren: even russian need that ;) btw: I saw there are some brand new arbcom wikis [21:40:04] arbom-en, arbcom-de, arbcom-nl [21:40:42] new in the 'just on tool labs' sense, I suspect? [21:40:55] arbcom-nl has existed since at least 2006 [21:41:07] valhallasw: Those shouldn't be there at all; or do you mean in meta_p.wiki? [21:41:21] * valhallasw looks at hedonil  [21:41:28] valhallasw: never heard of this before [21:41:50] valhallasw: not in labs, saw them on my statistics ;) [21:41:54] it's a great platform to prepare joint communication [21:42:03] 'we have this announcement, and everyone has to OK it' [21:42:28] valhallasw: That's what they are mostly used for. Also, TODO lists and decision drafts. [21:42:46] * valhallasw was in the nlwiki arbcom in 2007-ish [21:42:52] valhallasw: Also some CU archival for stuff too sensitive for an open wiki page. [21:43:04] * hedonil looks at tsreports [21:43:09] valhallasw: This report is being generated for the first time, so no data is available yet. Cache (re)generation has just started. [21:43:17] Ah, we're colleagues-ish then. :-) [21:43:41] hedonil: it should auto-refresh, so if it's a quick query, it will show up automatically [21:44:17] * hedonil is waiting Cache (re)generation started 1 minute(s), 0 second(s) ago. ->wanted pages [21:45:07] valhallasw: what does ts stand for? [21:45:09] depending on the wiki, that will take a while [21:45:14] toolserver [21:45:37] or, well, it did, until now [21:45:44] now it's just a name ;-) [21:45:52] valhallasw: eta? min? / hour ? [21:46:01] which wiki? [21:46:10] valhallasw: enwiki [21:46:36] let me see what I can find in the TS database [21:47:55] valhallasw: links to bugreport and wiki need to be adjusted [21:48:14] hedonil: dewiki took 12501 secs [21:48:50] so enwiki will probably take a day or so [21:48:54] valhallasw: oh my gosh. ain't nobody got time for that :P [21:49:06] well, check back tomorrow ;-) [21:49:19] valhallasw: will do so [21:49:22] the 'send me an e-mail when it's done option' has been considered but not yet implemented [21:53:22] valhallasw: but if you still need that, I can provide you access to my l10n table - just need your tools name. [21:53:46] hedonil: I'm using the api now, which also works :-) [21:54:00] valhallasw: ok [21:55:11] valhallasw: if you want to see fast statistics, take this https://tools.wmflabs.org/wikiviewstats :) [21:55:37] cool [22:01:18] giftpflanze: back to the url-fixing bot: there was some anonymous guy who promised sophisticated algorithms in broken link detection and accurate fixing. [22:02:03] giftpflanze: afaik he was supposed to be related to archive.is [22:02:22] i remember something with archive.is, yes [22:02:49] giftpflanze: and afaik he had a conversation with Merlissimo in wikipedia [22:04:18] https://de.wikipedia.org/wiki/Wikipedia:Bots/Anträge_auf_Botflag#2013-11-04_.E2.80.93_RotlinkBot [22:04:43] giftpflanze: yeah, exactly. [22:12:18] meh, of course all the commons-joined stuff is broken [22:25:17] jsub ALL the things \o/ [22:26:43] valhallasw: there is always a solution: http://www.flickr.com/photos/110698835@N04/11229450023/ ;-) [22:57:06] hi? [23:09:10] Is anyone here who knows SQL? [23:10:06] PiRSquared: sorta [23:10:38] Betacommand: is it possible to do something like https://wiki.toolserver.org/view/MySQL_queries#List_of_interwiki_links_from_all_wikis on tool labs? [23:11:48] I want to check a few interwiki links. Nemo_bis has generated reports for many interwiki prefixes, but I would like to be able to update the information myself, and generate reports for other interwiki prefixes. [23:12:23] I don't know how to connect to all wiki databases, or any equivalent to "toolserver.wiki" [23:13:19] PiRSquared: the databases names can be found in meta_p.wiki [23:13:45] hedonil: however you cannot sql meta_p [23:14:22] and that just provides the database info, interwiki data is spread between wikidata and the local wiki [23:15:22] PiRSquared: first select all dbnames from meta_p then iterate over that array and connect to all wikis [23:15:25] oh, to be clear, I'm mainly interested in interwiki prefixes to non-Wikimedia wikis, e.g. wiki:, wikia: [23:15:53] hedonil: doe meta_p only have wikis, and not other dbs? [23:16:08] PiRSquared: you are not looking for meta_p then [23:16:22] PiRSquared: only 'official' wikis [23:16:25] give me a sec [23:16:38] yeah, I only care about the SUL ones [23:16:46] and I don't even care about closed wikis [23:17:21] but closed wikis don't hurt [23:18:30] PiRSquared: it's 852 wikis incl. wikipedia, wikibooks etc. go: mysql -h ruwiki.labsdb and make your selection in meta_p.wiki [23:18:41] PiRSquared: SUL is only on offical wikis [23:18:59] hedonil, Betacommand: thanks [23:19:16] what are unofficial wikis, BTW? Internal wikis? [23:19:25] No [23:20:22] PiRSquared: there are some wikis like club wikis and fan wikis and stuff which are not not provided (of course) [23:21:01] PiRSquared: https://meta.wikimedia.org/wiki/Interwiki_map [23:21:50] Betacommand: If you look at the history, you'll see I'm the most active editor of the interwiki map currently. :) That's why I want to be able to search for interwikis, so I can tell if they are used or not. [23:22:17] PiRSquared: then meta_p is not where you want to look [23:22:41] No, what I want to do is what the other toolserver script does. [23:23:06] Look through each Wikimedia wiki for pages containing certain interwiki prefixes. [23:23:57] PiRSquared: all meta_p does is gives a list of projects [23:24:20] like enwiki_p, frwiktionary_p, etc.? [23:24:24] yep [23:24:36] then that's what I want (probably) [23:24:49] you would then need to look at iwlinks [23:25:07] that's what https://wiki.toolserver.org/view/MySQL_queries#List_of_interwiki_links_from_all_wikis does [23:25:17] What does SLOW_OK mean? [23:25:53] it was a feature/limit on toolserver [23:26:04] it means that your query is not killed so easily by the toolserver query killer [23:26:07] long running queries where sometimes killed [23:26:30] adding that flag let the query killer know you expected it to run for a while [23:26:44] is there an equivalent on (tool) labs? [23:26:55] not yet [23:26:58] select count(*) from iwlinks where iwl_prefix = 'commons'; [23:27:00] +----------+ [23:27:01] | count(*) | [23:27:03] +----------+ [23:27:04] | 1945731 | [23:27:06] +----------+ [23:27:07] 1 row in set (16.00 sec) [23:31:48] hedonil: I do have one more question. Why ruwiki? [23:32:15] PiRSquared: by chance ;) I'm working there right now. [23:32:19] PiRSquared: it was just a random database [23:32:26] PiRSquared: http://pastebin.com/pUb3iRsb [23:32:57] Betacommand: thanks for that, what query did you run? [23:33:04] does anybody know if we have semantic mediawiki instances installed on labs and if it's a pain to set up? [23:33:28] PiRSquared: select iwl_prefix,count(*) from iwlinks group by iwl_prefix; [23:57:18] Coren: you around>