[00:28:19] fwilson: Happy fun hint: tools-login.wmflabs.org is directly accessible by ssh. :-) [00:36:10] Coren: stalker, looking at the logs :P [00:36:41] fwilson: No need. Just 'who' works. :-) [00:36:48] oh wait... good point [00:36:55] * fwilson stalks everyone [01:08:27] [bz] (ASSIGNED - created by: Antoine "hashar" Musso, priority: Normal - enhancement) [Bug 36648] replicate HTTPS architecture - https://bugzilla.wikimedia.org/show_bug.cgi?id=36648 [01:35:51] Coren- Putting on my enwiki bot operator hat, is the tool labs to the point where I could move AnomieBOT over? Or should I be looking at the bots project instead? [01:36:08] * anomie thinks AnomieBOT's current machine is dying, and has no spare [01:38:48] anomie: If it doesn't need access to the database replicas, tools is ready for primetime. [01:39:05] anomie: It's filesystem performance is subpar atm, but unless you do heavy disk IO that shouldn't be a hurdle. [01:39:09] Its* [01:39:40] (I'm working on replacing gluster with NFS as we speak) [01:39:53] It has no database replicas now, so good! Although I look forward to when that is available. Right now it uses sqlite to store data, but I think it's mostly network bound rather than disk IO bound. [01:40:22] Tools seems to be at least mostly stable [01:40:25] more stable than bots used to be [01:40:56] anomie: If you want, tools get a mysql database for free so you can use that. [01:41:04] !toolsdocs [01:41:04] http://www.mediawiki.org/wiki/Wikimedia_Labs/Tool_Labs/Help [01:41:11] anomie: ^^ good primer [01:41:27] I'll probably do that at some point. [01:41:44] Do you already have a wikitech account? [01:42:03] Coren- Of course ;) Anomie [01:42:54] Your tool, 'anomiebot' okay? [01:42:59] Perfect [01:43:47] anomie: You're all set up. [01:44:16] Coren- Thanks! [01:44:41] heh, cool colorized ASCII-art logo [01:44:47] :-) [01:44:56] yep [01:45:00] did you do that Coren? [01:45:09] * Coren nods. [01:45:14] ooo [01:45:16] must have been fun :) [01:45:33] There /are/ advantages to being old enough to remember 300 baud acoustic modems. :-) [01:45:44] :D [01:45:58] acoustic modem [01:46:29] http://www.pearltrees.com/s/image/origin/85/33/66/853366f59648fc8621b4686d7f5db44c [02:00:04] Hey that looks familiar [02:00:12] I watched WarGames recently :P [02:41:58] Coren- Is there a procedure for requesting packages be installed? [02:42:39] asking in IRC :) [02:42:50] I asked for gnuplot this morning, and it was very fast :) [02:43:00] * anomie would like libpod-simple-wiki-perl and libxml-libxml-perl [02:43:04] if he's online. [02:43:11] Good, saves me asking for gnuplot ;) [02:43:16] ooo what are you doing? [02:43:34] I did plots of vandalism reverts [02:43:35] :) [02:44:09] rprobably should let that guy know that voxelbot stats are ready :) [02:44:29] AnomieBOT updates https://en.wikipedia.org/wiki/File:File-WikiProject_Medicine_-_Dermatology_task_force_-_Articles_created.svg. Mostly because I wanted to test my uploading code, and someone asked. [02:45:34] pretty graphs :) [02:45:36] anomie: Yes, atm, you ask me or petan. :-) [02:46:17] Coren- libpod-simple-wiki-perl and libxml-libxml-perl, please [02:47:59] Change on 12mediawiki a page Wikimedia Labs/Tool Labs/Notepad was modified, changed by MPelletier (WMF) link https://www.mediawiki.org/w/index.php?diff=672519 edit summary: [+43] +more [02:50:39] anomie: {{done}} [02:50:47] Thanks! [02:53:31] anomie: Undocumented goodie; a .description file in your tool's home will show in https://tools.wmflabs.org/ [02:53:55] * Coren should probably document that. [02:53:57] HTML or wikitext? [02:54:21] anomie: Heavily limited html; basically

and
[02:55:00] * Coren thought implementing parsoid for short descriptions might have been overkill. :-) [02:58:41] * anomie abuses CSS in .description [02:59:08] Pretties. :-) [02:59:17] p.O [02:59:24] o.O* [02:59:40] haha nice [02:59:50] fwilsleep: There's your security hole :P [03:00:07] Adding a background-image is hardly a big hole in security. :-) [03:00:58] Coren- Pointing it at a remote server can allow tracking views. And IE, of course, allows executing arbitrary javascript from CSS. [03:01:09] Ah. IE. [03:01:14] Hm. [03:01:34] Ohwell. Off with stylying. How... sad. [03:01:46] * anomie points to MediaWiki's Sanitizer.php [03:01:53] Clearly the solution is to forbid any user who uses IE from connecting to wmflabs. [03:02:16] legoktm- s/wmflabs/the Internet/ ? [03:02:24] LOL yes [03:02:28] * Coren wonders how standalone Sanitizer.php can be. [03:03:24] Why not make it a publicly editable wikipage like TSTOC was? [03:04:00] Ooo. http://htmlpurifier.org/ [03:04:29] legoktm: Because that page was always out of date. We're having bazillion of troubles even making an /inventory/ of what's running on the TS. [03:04:33] Coren- References a few globals, and calls a few functions from GlobalFunctions.php that could probably be reimplemented easily. I don't see it using any other classes. [03:05:00] Oh yeah, I might want to add my tools to that... [03:06:23] OTOH, as far as security goes, we give people a public_html directory. So a little CSS and JS in that page may not be such a huge worry. [03:11:08] That was easy. [07:03:40] Ryan_Lane: ping [07:49:26] Coren|Sleep: When you wake up, if we can get "pip install stathat" on tools, that would be great :) [08:11:39] Or maybe not…it seems to be broken. [08:18:26] !ping [08:18:26] pong [08:19:56] Coren|Sleep: Yeah don't worry about it, found something else that works :) [09:27:21] addshore can you test something for me [09:27:36] I need someone with pure windows box and no gtk libraries :> [10:44:30] [bz] (VERIFIED - created by: Željko Filipin, priority: Unprioritized - normal) [Bug 47129] Upload Wizard broken at commons.wikipedia.beta.wmflabs.org - https://bugzilla.wikimedia.org/show_bug.cgi?id=47129 [12:51:25] @notify binasher [12:51:25] I will notify you, when I see binasher around here [12:54:06] @notify OussamaBenLaden [12:54:06] I will notify you, when I see OussamaBenLaden around here [12:54:10] thx [12:54:13] just in case [13:18:47] @notify George Bush [13:18:48] I doubt that anyone could have such a nick 'George Bush' [13:18:59] meh [13:47:29] re [13:48:21] any one know the default mysql password being used by puppet installs ? [13:56:03] I don't even know there is a puppet version [13:56:23] try sudo su [13:56:25] then mysql [13:56:32] it might write my.cnf [13:56:35] to /root [13:56:54] if not - blame the person who made that [13:57:00] because it would be crap [14:50:28] petan: what do you need? :P [14:51:01] TBH I think I found out... I made gtk application in c# and I wanted to know how complicated is to run it on other box [14:51:15] http://code.google.com/p/pidgeon-repo/downloads/detail?name=Pidgeon.exe&can=2&q= [14:51:17] this one [14:51:45] I think it won't work until you install gtk# [14:59:28] addshore you will need to install it as I started rewriting huggle yet again [14:59:40] I just can't stand idea of using IE as browser [14:59:45] gtk comes with gecko [15:01:58] petan: is gtk gecko still supported? [15:02:14] petan: last when I was doing GNOME stuff I heard that they stopped support for embedding gecko in places... [15:02:20] but.. that was a while ago. [15:09:07] > The date "2013-04-11 15:15:02.933773" was not understood. [15:09:27] YuviPanda I think it does in GTK 2 [15:09:38] otherwise no idea what gtk uses as web browser [15:09:38] petan: yeah, they froze it at that level [15:09:43] Ryan_Lane: ^^ that's on https://wikitech.wikimedia.org/wiki/Nova_Resource:I-0000069e [15:09:44] but surely not IE [15:09:46] petan: and then refused to support anything more [15:09:48] petan: hehe, agreed [15:10:41] petan: but I reccomend using webkit [15:10:46] petan: http://webkitgtk.org/ [15:10:51] petan: that's, IIRC, the reccomended solution [15:10:57] petan: and is actually maintained [15:11:00] it needs to have c# wrapper [15:11:05] petan: gah, right [15:11:18] i could write it [15:11:20] but [15:11:28] if there is working solution I would prefer that [15:11:31] petan: true [15:11:36] rather than reinventing a wheel [15:13:00] petan: https://groups.google.com/forum/#!topic/mozilla.dev.embedding/c_NMcO-N8wo/discussion [15:13:36] petan: quoting, "As a project, we aren't going to spend effort trying to solve the problems associated with in-process embedding." [15:13:44] petan: there is, literally, no proper solution :( [15:13:50] petan: you can use it for now, but it's an older version of gecko [15:13:58] petan: and page rendering might run into problems, etc. [15:14:05] but you're right, it is the only solution in C# right now [15:14:20] Mono's desktop stuff hasn't really been worked on much since they started focusing on mobile, I guess [15:14:22] (could be wrong) [15:14:26] hm we can always make a wrapper for new gecko, that means - updating existing wrapper [15:14:29] petan: but just be aware :) that it is not supported [15:14:41] petan: not really. They abandoned it because making the wrapper was too hard [15:14:41] lot of stuff isn't supported well in open source [15:14:51] petan: this is not just not supported, but explicitly deprecated [15:14:56] difference :) [15:15:07] either way, nothing wrong with it. [15:15:09] ok what is current browser control using then [15:15:19] petan: an older version of gecko? [15:15:28] I have gtk3 wrapper too [15:15:36] sure, the wrapper is there [15:15:38] but I don't want to use because that is unsupported [15:15:39] just that gecko is older [15:15:56] it's available for windows and debian sid so far [15:16:01] not even in ubuntu [15:16:07] too new [15:16:18] gtk3? yeah [15:16:34] anyway, I haven't used Huggle so I don't know how much it depends on this :) [15:16:54] but if you want the rendering engine to keep getting updated (not just the wrapper), do checkout the webkit embedding stuff [15:17:04] Oren_Bochman: there's not even a mysql server installed there at all (nor CLI client) [15:17:36] (moved from #-tech) [15:18:12] YuviPanda huggle is very dependent on browser control :P [15:18:37] :D [15:18:46] petan: *personally*, I wouldn't base any new code on Gtk# [15:18:51] petan: https://github.com/mono/gtk-sharp/commits/master is not very encouraging [15:19:02] even though I <3 C# [15:19:04] I know I have seen it but... [15:19:11] But, but, reinventing wheels is FUN! [15:19:13] there is no alternative [15:19:14] that works [15:19:21] petan: agreed. [15:19:25] petan: just making sure you know :) [15:19:33] Coren: tch tch :P [15:19:41] well, I talked to some people and they actually still work on gtk# just not so fast as before [15:19:51] novell isn't investing so much to mono as they did [15:19:58] it's mostly all about xamarin now [15:20:03] petan: novell doesn't really exist anymore :P [15:20:08] which is investing all money to android [15:20:09] ah [15:20:14] right whoever overtook mono [15:20:25] petan: novel sortof died, and the mono guys just formed a new company [15:20:36] Oren_Bochman: ? [15:20:36] petan: they make most of their money from... iOS [15:20:38] aha [15:20:41] petan: and OS X [15:20:50] but xamarin works on android too [15:20:54] petan: their Android implementation isn't as mature [15:21:00] petan: plust their new stuff is not OSS [15:21:03] *plus [15:21:17] that makes me a sadpanda [15:21:38] it's still open source community things can change [15:21:44] petan: https://store.xamarin.com/ [15:21:57] petan: I don't think their Android / iOS underlying code is Open Source [15:23:09] probably not, they need to make money from something [15:23:25] I don't really care about that either :P I just hope that someone restart work on gtk# [15:38:53] YuviPanda I just was told by folks in #mono@irc.gnome.org that actually people are working on new wrapper for gtk3, it's even available though not stable yet... [15:39:10] petan: as I said, they can make a new wrapper easily. That's fine [15:39:19] petan: the problem is that they're wrapping an *old* version of Gecko [15:39:22] but they also told me there is very small number of them :( [15:39:35] petan: so it's like you'll be stuck in Firefox 3.5 or something [15:39:44] because mono is really only xamarin these days, only few volunteers working on gtk# [15:40:00] this way mono will die... meh [15:41:43] damn it's 2013 and there is still no really easy way to make crossplatform applications... [15:42:45] .net implementation suck on non windows platforms, java suck on all platforms and c++ requires creepy libraries and is too hard for newbies to learn, also it has complicated exception handling and doesn't support JITTER like optimizations [15:43:11] which on other hands have benefits :D [15:44:28] petan: "this way mono will die" is a good thing. [15:44:46] it isn't [15:44:52] petan: yeah, it is sad [15:44:53] Coren: it isn't [15:44:57] Coren: C# is *awesome* [15:45:04] mono seemed to be a best crossplatform framework so far [15:45:04] Coren: and Microsoft has a legally binidng patent promise [15:45:15] Coren: and if you're going to hold that against them, you should not use Java either [15:45:24] I don't use Java either. :-) [15:45:41] Coren whatever you use, I bet it suck on windows [15:45:54] petan: I don't use Windows either. [15:46:01] unless it's LSD or cocaine what u use :D [15:46:14] remains me that joke about guy being fired for "using PHP" [15:46:33] Coren: heh, lucky you :P [15:46:39] Coren yes, but what if you wanted to make an application targeted to all users not just linux [15:46:45] like huggle [15:46:51] not all wikipedians run linux [15:46:57] Coren: then I agree. There seem to be a fair amount of hypocritical people who hate Mono for philosophical reasons while loving Java [15:46:58] most of them are windows people [15:47:01] which, uh, is... [15:47:59] petan: Then I'd use a real language, with a real framework, and write portably. I've done it before. It's more effort, and you need to build on the target platforms, but the result is 200% more stable, doesn't consume half your resources before it gets to the first line of /your/ code, and is only as broken as *you* make it. :-) [15:48:16] yes it's possible but it's hard [15:48:23] not a work for volunteer but paid developer [15:48:32] I've started huggle in c++ [15:48:46] one guy joined me and after 2 months he still didn't find out how to compile it [15:48:59] that's why I switched to .net [15:49:01] it's easy [15:49:21] simple for newbies, you don't need professional coders to join you, which almost never do that for free [15:49:23] (+1 to Coren, actually) [15:49:38] and +1 to petan too :) [15:49:39] I'm... dubious that code written by someone who couldn't even figure out a Windows-friendly IDE would be that valuable. [15:49:54] Coren: we were all unable to figure out X at some point of time [15:49:57] for various values of X [15:49:58] well, I actually was using linux ide :D [15:50:05] code blocks [15:50:23] YuviPanda: Yes, but then you can hardly be expected to contribute to X until you figure it out. :-) [15:50:24] and using wxwidgets that isn't that easy to setup either [15:50:33] no reason to turn them away :P [15:50:45] petan: I think the solution is to make it web based :P [15:50:53] that was here as well [15:50:56] we got blocked by WMF [15:51:07] we were working on web based huggle until then [15:51:14] oh [15:51:15] blocked? [15:51:18] yes [15:51:22] for? API limits? [15:51:28] for authentication [15:51:33] YuviPanda: I see it differently. They are /best/ turned away and redirected to something within their current skill level so that they grow. The opposite result is being overwhelmed, doing copypasta coding without true understanding, and ends in shitty legacy code years down the line. [15:51:36] petan: there's a solution to that! [15:51:56] petan: there are a couple of solutions, actually. [15:51:57] Programming is "easy". Writing good code is *hard*. [15:51:59] there is only one way to authenticate and we were told that if we use it all servers we run it on will get blocked on wmf side [15:52:23] YuviPanda: really? name some that is enabled on production right now [15:52:25] Coren: ah, that is true. But that depends on if you let them merge or let them struggle until they ge tit [15:52:48] petan: 1. write it as a gadget, make all authenticated requests from gadget, and do heavy processing on your server, use CORS [15:52:50] YuviPanda: You'll lose more newbies that way than by being upfront. [15:53:03] petan: Chrome / FF extension [15:53:24] YuviPanda that requires too much javascript, which I don't understand... and ff extension, that would be harder to write than if I did it in c++ :P [15:53:25] petan: 3. Write as a desktop app that's just a wrapper around webkit [15:53:29] YuviPanda: I've done it before; redirect a newbie to "Well, how about you help with documenting the API instead? That'll get you to read code and understand it better." [15:53:37] petan: FF no longer requires XUL, etc for extensions. It's pure JS now [15:53:44] um [15:53:49] that makes even harder for me :P [15:54:00] I know JS as much as I know russian language [15:54:07] like I know "vodka" [15:54:09] that's all [15:54:36] that's even the wrong way how to write it :P [15:54:37] petan: hehe :P [15:54:47] petan: I can confirm that that is the wrong way to write it [15:54:51] petan: true, it's problematic. But work on desktop frameworks seems to have sortof stalled [15:56:02] I still believe that world of computers will use application hosted on local system (such as executable files etc) for some time, maybe one day everything will work in a browser, but I think it's not going to be very soon [15:56:29] I can't think of much multithreading in JS etc [15:57:27] Coren btw what you consider a "proper language" [15:57:33] I am curious [15:57:42] c? assembler? [15:57:43] petan: heh, sure. It's all async, and js is not the best language ever. [15:57:55] Coren: hmm, right. Makes sense, I think [15:58:17] Coren: let them do things that are *just* out of their reach so that they don't get super pissed [15:58:25] petan: It depends on what you're trying to do. Bad coding error number one: use a language you like rather than the right one for the job. :-) [15:58:31] Coren I know it sounds funny but some .net applications might run faster than c++ given that JIT optimizations which are impossible in statically compiled binaries [15:59:03] eg, your code get optimized for a processor which you are using [15:59:24] you would need to recompile c++ app for every processor existing to get the same effect [16:00:00] these days people are using ubuntu like distro's that get precompiled sw anyway [16:00:19] petan: If you are worringing about optimizing for specific instruction sets and not writing a RT driver, then you're doing it wrong. Using the right algorithm and understanding locality >>> low-level optimizations. [16:00:21] no more gentoo's : [16:00:22] :D [16:01:03] Coren I think that some code might be affected by instruction sets... specifically multimedia applications [16:01:21] media players and so [16:01:30] or encoders [16:01:44] but in fact, this isn't case of huggle :P [16:03:18] btw Coren did you ever wrote some robust c++ applications for free as volunteer in your free time? it requires LOT of time, just because stuff you make in 5 minutes in c# you need to write 8 days in c++ [16:03:45] I know that .net way isn't always fastest and most proper [16:03:48] but it's simpler [16:04:34] 5 line code in c# can equal to hundreds of lines in c++ [16:04:49] (not talking about c++/clr) [16:22:49] Coren + Ryan_Lane: I fixed the puppet::self stuff (good catch!) and added a comment with a questions [16:22:56] take a look when you get a chance, danke [16:43:02] * jeremyb_ wonders if this is a new MW feature or what... "Current UTC time is 15:35" below the edit box [16:45:02] Coren: petan: how about python for cross platform? [16:45:06] * Coren is back. [16:45:11] or e.g. xulrunner [16:46:38] petan: also, not understanding JS is no excuse [16:47:21] petan: you should ask Coren how long log2udp2 took... [16:54:17] jeremyb_: I'm a Python newbie, so I refuse to offer an opinion as to its suitability. :-) [16:54:39] Coren: well see e.g. funnyboat [16:54:51] http://funnyboat.sourceforge.net/ [16:55:18] jeremyb_ python suck on windows just as much as java [16:55:20] hrmmm, that doesn't have a single executeable with builtin python... [16:55:26] petan: {{fact}} [16:55:35] (funnyboat wasn't as good an example as i expected) [16:56:01] it just does :P I could just stick with mono if I didn care if its implementation on some other platform suck more or less [16:56:23] well that's not a reliable source [16:56:28] petan: Yes, I have. "Simpler" is a neutral feature in a language; much "simple" simply hides the complexity which then comes to bite you in the ass when you don't understand what's going on. [16:56:34] funnyboat isn either [16:56:55] Coren thatś true [16:58:03] petan: isn't either what? [16:58:22] btw jeremyb_ python actually suck almost on every platform - just take a look on the heavy resource usage, it is even worse than java, simple python scripts are eating battons of ram [16:58:39] petan: The problem is that good coding is *hard*. You need to understand algorithmics and computer architecture. Modern languages and techniques try to do that for you; it works well enough for simple tasks when resources are not an issue; it's rarely adequate for production code. [16:58:50] jeremyb_ it is not a proof that python is useable that it is what it is not [16:59:22] ... [16:59:28] #s? [16:59:30] Coren yes but for production code usualy paid developers are being hired, not volunteers [16:59:58] you can t expect volunteers to prefer the hardest way [17:00:40] petan: To a point, that's true. Linux is a good example; it was okay until some pros got to dedicate their time to it then it got great. What this means, though, is that what volunteers can do is limited, not that you have to "make due" with the limitation. [17:01:25] petan: And even then, that's only true /to a point/. Some software written by just volunteers is great code -- but it had to have had serious quality control and not everyone could have participated. [17:01:43] yes if you have lot of volunteers it works :P [17:01:50] but it is hard to get them [17:02:20] c# java python and such open the door to small but yet powerfull projects which would never existed if they had to be written in c++ [17:02:56] htop would surely was not itself in top of processes which eat resources if it was written in c++ [17:03:28] petan: So long as it is understood that those can never be serious production code. Look, even Mediawiki is rickety and a maintenance nightmare because it was written in PHP, and that one at least has the virtue of being relatively frugal with resources given it was written to exist in webservers. [17:03:58] is there a better alternative than php? [17:04:18] unless creating directly a webserver for this purpose [17:04:21] petan: Not really. Not for a stateless architecture. [17:04:40] petan: You could probably write a goot phase 4 mediawiki if you went the middleware road instead. [17:04:57] petan: see http://wiki.python.org/moin/GuiProgramming#Cross-Platform_Frameworks I guess it's best to use one of the one based on WxPython [17:05:33] petan: PHP isn't great, but it does a well enough job for "simple website with procedural content" [17:05:36] ok but wxPython, is it actually simpler than using wx directly with c++? [17:05:45] petan: Mediawiki /does/ strain its limits. :-) [17:07:08] I have not seen any application written in python that was widely used on windows [17:07:17] re [17:07:42] except for some that I had to be constantly killing as they were eating all my resources [17:08:02] jeremyb_: that is strange [17:08:37] the nagios def shows that this was a requirement [17:09:03] * addshore is lost in the enwiki dbs... [17:09:07] Oren_Bochman: huh? [17:09:24] petan: and how do you know that that is python's fault? [17:09:58] I do not, once I see python application that is just as effective as if it was written in c++ I will change my mind [17:12:29] does anyone know where the default user&password is defined for MySQl puppet definitions ? [17:12:42] Oren_Bochman did you check /root/my.cnf [17:14:00] no such file [17:18:06] brb [17:38:34] jeremyb_: eh? I don't understand what your ping meant [17:38:39] you gave like 0 context [17:38:51] ah [17:38:55] you mean for semantic properties? [17:39:00] it's like that for every date [17:39:12] apparently open stack uses a date format that SMW doesn't like [17:39:31] probably need to modify the string (using lua?) before it hits the SMW property [17:47:55] jeremyb_: want to give a go at that? :) [17:56:12] Ryan_Lane: i was thinking more "make SMW like it" [17:56:47] Ryan_Lane: the nova format changed at some point? [17:57:06] jeremyb_: it's never worked [17:57:15] huh [17:57:18] ok [18:09:05] Ryan_Lane, any idea why sudo is broken on bots-labs? [18:09:29] damn it [18:09:39] I guess sudo doesn't fail over properly [18:09:42] that's really annoying [18:10:05] ? [18:12:36] Ryan_Lane: 12 16:43:02 * jeremyb_ wonders if this is a new MW feature or what... "Current UTC time is 15:35" below the edit box [18:13:30] andrewbogott: is it working now? [18:14:10] Same, I think... [18:14:20] It prompts me for a password (shouldn't) and doesn't like the password I offer. [18:14:48] * Ryan_Lane nods [18:14:52] this is because the primary is down [18:15:00] and the damn upgrade failed... [18:15:22] sudo is working fine on tools-login [18:15:24] jeremyb@he-moodle:~$ sudo echo foo [18:15:25] foo [18:15:28] works for me... [18:16:07] is one lucid? [18:16:11] and the other precise? [18:16:50] yes. [18:16:54] Works on precise, not on lucid. [18:17:13] stupid lucid [18:17:22] well, I'm trying to fix it now [18:18:17] hm. I need to downgrade.... [18:19:18] or I need to just install fresh [18:19:32] and initialize it from the other [18:22:58] hi [18:23:20] I'm going to start fresh and initialize from the other [18:24:06] you're talking about opendj, not the instance, right? [18:24:12] yeah [18:24:15] Ryan_Lane: do you know in which puppet manifet the default password for mysql module is defined ? [18:24:24] nope [18:24:25] OK. 'cause I'm about to throw away that instance so wouldn't want you to spend time on it [18:24:33] * Ryan_Lane nods [18:26:05] want to transwiki https://en.wikipedia.org/wiki/Module:String ? [18:26:31] sure. give me a bit though [18:26:37] opendj upgrade not going so well [18:26:48] seems the database was in an inconsistent state when I did this [18:26:58] yeah, i'm not paying too much attention here but sounded not good [18:27:01] bbiab [18:28:06] anomie: BTW, sanitation by http://htmlpurifier.org/ now. It was amazingly painless to install and use. :-) [18:28:21] Coren- Nifty [18:29:04] funny they have a hall of shame [18:29:27] hm. actually I think I'll downgrade [18:32:57] then I'll start the server and bring the database into a consistent state, then I'll try to upgrade again [18:36:57] Ryan_Lane: Why not just install afresh and dump back from the current secondary's instead? [18:37:09] more work [18:37:43] * Coren would have guessed that it was also more predictable though. [18:37:57] the upgrade is generally predictable [18:38:06] I tested it in a number of places [18:38:19] ... clearly not /that/ much. You didn't predict it breaking. :-P [18:38:32] opendj apparently hadn't shut down properly [18:38:39] which left it with a dirty database [18:38:46] which caused the upgrade to fail [18:39:28] Ah. [18:43:59] ok. trying again [18:44:26] nope [18:44:31] going to have to do it fresh [18:45:27] hmm, I can't create instances in the analytics projects anymore [18:45:28] hmm [18:45:31] Failed to create instance. [18:45:37] likely a quota [18:45:54] i only created one since you upped the quota [18:45:58] i also just deleted some [18:46:21] hmm [18:46:21] Successfully deleted instance, but failed to remove search1 DNS entry. [18:46:22] ? [18:46:30] oh [18:46:38] did you create an instance with the same name as another? [18:46:41] probably [18:46:42] that will error out [18:46:46] ok [18:46:47] but we have a bug [18:46:51] it'll still create the instance [18:47:02] and then that'll also be in an error state [18:47:08] well, i'm not trying to create an instance with the same name anymore [18:47:08] it used to stop the entire process [18:47:11] i was testing some stuff [18:47:12] not sure when that failed [18:47:15] right now i'm trying to create a new instance [18:47:18] with a new name [18:47:25] (that was the error message from an unrelated delete) [18:49:49] @notify hashar [18:49:49] I will notify you, when I see hashar around here [18:55:58] ottomata: failed to delete dns is normal [18:56:03] if you use the same name twice [18:56:12] ok [18:56:13] since no IP address was added for that instance [18:56:15] cool [18:56:15] aye [18:56:20] and hence no dns entry [18:56:31] but I should be able to add, right? [18:56:45] lemme try again, the instances are not on my list anymore [18:56:55] ok that worked [18:56:59] yeah, must be a quota thing [18:57:06] is there a way I can see my quota and usage? [18:58:12] not yet [18:58:20] there's an api for it [18:58:26] I just need to add support for it [19:01:43] Ryan_Lane: Perhaps this explains some of your Gluster woes. [19:01:49] what does? [19:01:58] Ryan_Lane: On labstore4: MEMTEST lane failure detected on DIMM B2 [19:02:06] -_- [19:02:17] Steve will open a service call with Dell. [19:02:18] oh [19:02:19] right [19:02:24] but that DIMM gets disabled on boot [19:02:28] I'll proceed with labstore3 as primary. [19:02:51] Ryan_Lane: It gets disabled at boot, but when was the last time you powercycled that box? It might have failed while it was live. [19:03:02] I tried putting in a ticket about this a while back, but I couldn't get it to show the error again [19:03:14] So flaky. That's even worse. :-) [19:03:45] yep [19:03:58] but it was always disabled [19:04:09] well, since it faild [19:04:11] *failed [19:05:21] heh. fresh upgrade and restore from backup [19:05:23] err [19:05:25] fresh install [19:05:27] lets see if that works [19:06:29] seems I still need to run upgrade for it [19:08:42] Is there a way to rebuild beta.wmflabs message cache, like `mw-update-l10n` ? I assume that's why http://en.wikipedia.beta.wmflabs.org/w/index.php?title=Special:UserLogin&useNew=1 has . [19:09:46] likely need to ask hashar [19:12:31] hmm, is there somethign weird with the labs ldap right now? [19:12:41] yes, what issue are you having? [19:12:42] sudo? [19:12:48] puppet initial run [19:12:52] Apr 12 19:11:23 kraken0 nslcd[892]: [7b23c6] ldap_start_tls_s() failed: Can't contact LDAP server: Transport endpoint is not connected (uri="ldap://virt0.wikimedia.org:389") [19:12:59] Apr 12 19:11:23 kraken0 nslcd[892]: [7b23c6] failed to bind to LDAP server ldap://virt0.wikimedia.org:389: Can't contact LDAP server: Transport endpoint is not connected [19:13:11] ugh. is puppet also only pointed at virt0? [19:13:12] one sec [19:13:21] i see a vir1001 attempt too [19:13:25] soirry [19:13:28] virt1000 [19:14:03] is this using puppetmaster::self? [19:14:05] ldapserver = virt1000.wikimedia.org [19:14:07] no [19:14:10] ah ok [19:14:13] then I just fixed it [19:14:15] try now [19:14:48] hm [19:14:48] Apr 12 19:14:44 kraken0 puppet-agent[1595]: Could not request certificate: getaddrinfo: Name or service not known [19:18:45] well, give me a bi [19:18:47] bit [19:18:49] k [19:18:51] I'm bringing the primary back up [19:18:58] i'm going to move to a cafe, i'll be back on in 10ish [19:20:16] Ryan_Lane: Can you check if there is a logic reason for CVN bots to report dozens of sqlite database errors every second? [19:20:17] *DD/1.0*ERROR*ReactorException*SQL logic error or missing database [19:20:33] cvn-app1: /data/project/cvn/app/*/Lists.sqlite [19:20:50] Its like it is unable to write to disk [19:21:30] started a few hours ago [19:23:33] can you write to the disk otherwise? [19:23:54] make new files and such? [19:27:55] Is the disk full maybe? [19:28:36] /data/project? [19:28:38] no change [19:28:40] err [19:28:41] chance [19:28:45] unless you are hitting a quota [19:29:01] you didn't answer my question, though [19:29:54] ... Yeah well I'm not Krinkle, so... :) [19:30:03] whoops [19:30:04] crap [19:30:07] :) [19:30:10] autocomplete :) [19:30:21] oh. or not even [19:30:28] just poor reading skills :) [19:30:32] Krinkle: ? [19:30:45] Checking [19:31:30] I can create files in /data/project and append to them from shell [19:33:22] I'll create a backup and see if the bot can autocreate a new database, that'll lose a ton of data so just tmp to see if it works [19:33:52] I can't begin to explain what it does, because its tons of abstraction layers, but I know it worked for months and just broke down out of nowhere a few hours ago. [19:34:04] for all bots at once [19:52:42] hm [19:52:46] that doesn't make any sense [19:55:03] Ryan_Lane: hi :-] the beta cron spam should be reduced with https://gerrit.wikimedia.org/r/#/c/58859/ [19:55:11] Ryan_Lane: some sudo right was missing [19:56:05] this lets everyone run everything as apache... [19:56:23] I guess you already do that for mwdeploy [20:23:22] <^demon> Ryan_Lane: When you get a chance, https://gerrit.wikimedia.org/r/#/c/58891/ is the updates to the gerrit .deb. I've already deployed it because it was fixing some critical ssh issues, but this is what was deployed. [20:23:30] <^demon> But yeah, since it's already out anyway, no rush. [20:40:06] hashar there is a problem on beta with redis [20:40:14] Unable to connect to redis server. [20:40:15] Backtrace: [20:40:16] #0 /data/project/apache/common-local/php-master/includes/job/JobQueueRedis.php(197): JobQueueRedis->getConnection() [20:40:17] #1 /data/project/apache/common-local/php-master/includes/job/JobQueue.php(305): JobQueueRedis->doBatchPush(Array, 0) [20:40:49] @notify hashar [20:40:49] This user is now online in #wikimedia-dev so I will let you know when they show some activity (talk etc) [20:46:17] hashar [20:47:31] petan: we don't have redis on beta afaik :-] [20:47:46] but this error is from beta [20:47:59] itś not possible to edit pages [20:48:11] most probably because it inherits from the production config in operations/mediawiki-config [20:48:20] need an exception to disable red is job queue on labs [20:48:23] or vary by realm [20:48:32] OR [20:48:32] k [20:48:37] setup redis on beta :-] [20:48:42] there must be some puppet class somewhere [20:48:45] heh [20:48:50] that could be applied on the jobrunner box [20:49:07] this is kind of critical bug [20:49:18] all wikis are broken now [21:06:28] Ryan_Lane, any security concerns with this? https://gerrit.wikimedia.org/r/#/c/59009/1/manifests/ldap.pp [21:06:55] it's unneccessary [21:07:00] it's a library. it doesn't get run [21:07:02] only imported [21:07:31] Yes, but... [21:07:34] * andrewbogott doublechecks [21:08:50] Ah, ok, it's not a privs thing. [21:08:58] Why do you suppose 'import ldapsupportlib' works as root but not as a user? [21:09:08] I presume root has a different implicit pythonpath? [21:09:17] ah [21:09:28] maybe because it tried to write the pyc? [21:09:53] It says 'ImportError: No module named ldapsupportlib' [21:09:57] oh [21:10:02] probably because of the path [21:10:26] well, wait, now it doesn't work for root either. *Scowl* [21:10:27] how did this ever work? [21:10:45] by modifying the import path [21:11:05] this should really probably be changed to actually install properly into system python. heh [21:12:25] yeah, that would be less messy and confuse me less [21:14:03] Is there existing puppet code that puts a .py file in the right place for different python version installs? [21:18:09] doubtful :) [21:22:06] !log testlabs - deleting instance robh2 [21:22:08] Logged the message, Master [21:24:27] it's normal that a deleted instance does not disappear from an instance list immediately? [21:27:13] nevermind, i was just impatient, all good [22:28:29] Coren- I tried to start a test job on tools, but it doesn't seem to be running. [22:31:41] did it give you an error file? [22:34:34] Doesn't look like it. qstat says "608 0.25000 test local-anomie qw 04/12/2013 22:29:40 1" [22:35:10] oh [22:35:12] yeah its still queued [22:35:28] i submitted 300 jobs about half an hour ago... [22:35:41] and 12 of those are still queued [22:35:55] legoktm: Greedy! :-) [22:35:58] So your 300 jobs will keep my bot from starting for 20+ minutes? Hrm :( [22:36:22] anomie: I only have two compute nodes atm since we don't have many users yet. [22:38:18] Coren- Also, is there any way for jobs to signal each other? Or can I have one job fork a bunch of children and do it that way? [22:43:37] Ryan_Lane: There's not anything in puppet that does resource-type inheritence, is there? I want to make a resource that does everything 'file' does, plus a couple other things. [22:44:01] All I can think of is making a parameterized class and then redeclaring every single arg that 'file' takes… lots! [22:44:06] well, you can do a define that passing things in [22:44:28] you can make custom functions, too, then you can use ruby [22:44:39] what do you want to do that's similar to file? [22:45:36] Well, if it were possible to inherit from file, I'd make 'pythonfile' that copies the file as asked but then links it to /usr/lib/python/etc [22:45:50] ah [22:45:56] what do you mean 'do a define that passing things in'? [22:46:17] basically a wrapper to file [22:46:53] hm… have any examples of that? It's hard for me to understand what would happen to the params [22:47:34] define pythonfile ( $param1, $param2, etc, etc ) [22:47:56] file { "$param1": blah => $param2, etc, etc [22:48:18] OK, so I would have to rattle off all 20 or so args that file takes. [22:48:30] file { "": ensure => $param1 [22:49:15] its the only way I can think of, excluding writing ruby [22:49:15] That won't kill me I guess :) [23:17:44] hello Ryan_Lane [23:17:49] Ryan_Lane: wrong channel there :) [23:17:53] YuviPanda: heh [23:17:54] sup? [23:17:55] Ryan_Lane: the 'whatcanidofor*' projects [23:18:02] is there some instance that they can live on? [23:18:05] or should there be a new one [23:18:16] we can create a project for it [23:18:48] a whole project just for that? [23:18:51] and a whole instance just for that? [23:20:01] Ryan_Lane: also, I'm probably going to hack on a GitHub -> Gerrit bot over the weekend. I don't want an instance for it yet, but I'm wondering if it is okay to store ssh private keys in a labs instance? [23:20:28] well, if you're going to point dns with a trademark at it, security actually makes sense [23:20:41] hmm, riht [23:20:43] so its own project is sane [23:20:48] Ryan_Lane: okay, can you create the project? :) [23:20:52] yep [23:21:02] sweet! :) [23:21:13] Ryan_Lane: and give it a public IP? [23:21:27] Ryan_Lane: i'll just set a record for now, and email ops about moving the domains in a bit [23:21:40] easier to talk about it once there's already something there [23:25:32] YuviPanda: what's your wiki user name? [23:25:39] Yuvipanda [23:25:51] shell'd be yuvipanda [23:25:56] * Ryan_Lane nods [23:26:36] YuviPanda: You got the green light for your pet project? The cool. :-) [23:26:44] :D [23:26:48] legal was cool with it :) [23:27:07] and I got a response in like, an hour or so [23:27:12] so, \o/ [23:28:12] Ryan_Lane: Random read test: [23:28:15] Read 1.5259Gb Written 0b Total transferred 1.5259Gb (2.8227Gb/sec) [23:28:27] Heh. Need bigger test data! [23:28:35] YuviPanda: project created. may take a few minutes for the home directory volume to show up [23:28:45] :) [23:28:53] wheee, thanks Ryan_Lane :) [23:29:20] yw [23:29:58] * YuviPanda creates the instance [23:30:03] Read 212.44Gb Written 0b Total transferred 212.44Gb (3.5406Gb/sec) [23:31:12] Created instance i-000006a7 with image "ubuntu-12.04-precise" and hostname i-000006a7.pmtpa.wmflabs. [23:31:13] nice [23:31:15] Random write is, of course, teh suck. (raid) [23:31:18] now i go off to sleep [23:31:20] gnite [23:31:25] Thanksa gain, Ryan_Lane :) [23:31:29] Read 0b Written 15Gb Total transferred 15Gb (507.16Mb/sec) <-- seq write is good though [23:31:41] YuviPanda: night. totally welcome