00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:08  * ircretaryjoined
00:07:57  * thlorenzjoined
00:08:03  * charliesomequit (Ping timeout: 272 seconds)
00:11:00  * AvianFlujoined
00:13:04  * yorickquit (Remote host closed the connection)
00:15:36  * AvianFluquit (Ping timeout: 252 seconds)
00:16:44  <rowbit>Hourly usage stats: [developer: 0, free: 22]
00:19:01  * ferossjoined
00:20:40  * thlorenzquit (Remote host closed the connection)
00:23:58  <rowbit>substack, pkrumins: Encoders down: 50.57.226.209 (free4)
00:24:23  * ferossquit (Quit: feross)
00:36:38  * st_lukequit (Remote host closed the connection)
00:37:16  * st_lukejoined
00:41:28  * st_lukequit (Ping timeout: 240 seconds)
00:42:50  * defunctzombiechanged nick to defunctzombie_zz
00:45:27  * st_lukejoined
00:48:00  <jesusabdullah>Check it out, op knows stuff http://forum.openscad.org/Does-OpenSCAD-have-a-need-for-a-package-manager-td5616.html
00:48:20  * ferossjoined
00:49:05  * ferossquit (Client Quit)
00:49:30  * ferossjoined
00:49:35  * ferossquit (Client Quit)
00:51:52  * jibayquit (Remote host closed the connection)
00:52:57  * ferossjoined
00:56:09  * ferossquit (Client Quit)
00:57:54  * ferossjoined
01:00:51  * ferossquit (Client Quit)
01:01:14  * ferossjoined
01:01:31  * ferossquit (Client Quit)
01:03:12  * ferossjoined
01:03:20  * ferossquit (Client Quit)
01:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 21]
01:17:48  * dstokesquit (Quit: dstokes)
01:19:43  * dstokesjoined
01:20:52  * timoxley_changed nick to timoxley
01:21:48  * thlorenzjoined
01:22:22  * Maciek416joined
01:26:16  * thlorenzquit (Ping timeout: 265 seconds)
01:33:37  * st_lukequit (Remote host closed the connection)
01:36:58  * charliesomejoined
01:46:52  * DTrejoquit (Remote host closed the connection)
01:47:27  * DTrejojoined
01:51:55  * DTrejoquit (Ping timeout: 248 seconds)
01:51:56  <jcrugzz>isaacs: it successfully unpacks the tarball with node tar but somehow the memory is still filled up. attempting to spawn a child process its an enomem pbcopy < ~/.ssh/id_rsa.pub
01:51:59  <jcrugzz>whoops
01:52:07  <jcrugzz>https://gist.github.com/jcrugzz/564d028536fc881a581d
01:53:19  <isaacs>jcrugzz: yeah, like i said, probably you'll have to fix that bug.
01:53:39  <isaacs>jcrugzz: trace it through. i believe in you.
01:53:53  <jcrugzz>isaacs: well this is similar to what i was running into using node 0.8 and regular tar
01:53:55  <isaacs>jcrugzz: i'd like to say i could do it better, but honestly, i wrote that code so long ago, it may as well be someone else's anywya.
01:53:57  <jcrugzz>on larger snapshots
01:54:20  <isaacs>jcrugzz: yeah, something in node-tar is not backpressuring, or buffering somewhere, or something
01:54:34  <isaacs>jcrugzz: you'll find it. i'm sure you can do it.
01:54:47  <isaacs>jcrugzz: the good news is, it's probably already a bug in npm anyway
01:55:17  <jcrugzz>well what im saying, is that i dont believe memory is being cleaned up properly from spawning child processes
01:55:29  <jcrugzz>cause using node-tar allowed me to get farther in this process
01:55:29  <isaacs>jcrugzz: that seems unlikely
01:55:48  <isaacs>jcrugzz: node-tar might be less memory greedy than tar
01:55:59  <isaacs>jcrugzz: but if it's still buffering to death, then it's got a bug
01:56:53  <jcrugzz>isaacs: hmm so it isnt flushed after it completes?
01:57:07  <jcrugzz>and im guessing the child process did the same thing except worse
01:58:36  <isaacs>jcrugzz: the problem is that it's holding onto something
01:58:43  <isaacs>jcrugzz: the tar file isn't completing, is it
01:58:53  <isaacs>jcrugzz: if it was, then the things would go away, and gc would happen
01:58:55  <isaacs>and you'd be fine
01:59:33  <jcrugzz>isaacs: yea it hit the on end event and started the next function
01:59:40  <jcrugzz>then threw enomem on the next spawn
02:00:09  <isaacs>jcrugzz: spawn or node-tar?
02:01:03  <jcrugzz>it threw enomem on the next spawn
02:01:12  <jcrugzz>after node-tar did its thing
02:01:47  <isaacs>jcrugzz: we are wll into "need code, english is failing" territory here.
02:02:01  <jcrugzz>jcrugzz
02:02:03  <jcrugzz>lolwut
02:02:04  <jcrugzz>yes
02:04:16  <jcrugzz>isaacs: so this is where we got to in the sequence https://gist.github.com/jcrugzz/564d028536fc881a581d. and the code lies here https://github.com/nodejitsu/solenoid/blob/node-tar/lib/solenoid.js#L186-L319
02:04:27  <jcrugzz>where these functions are executed sequentially in an async.series
02:06:37  <isaacs>jcrugzz: so what's actually failing?
02:06:46  <isaacs>jcrugzz: write a standalone script that JUST dumps the tarball to a folder.
02:06:53  <isaacs>jcrugzz: and watch its memory usage.
02:08:22  <jcrugzz>isaacs: line 314 when it attempts to spawn two processes in parallel
02:09:28  <isaacs>jcrugzz: so, the problem is running chown and chmod in parallel?
02:09:49  <isaacs>jcrugzz: how do you even know that the tar unpack has anything to do with it?
02:09:52  <isaacs>that's what i'm getting at
02:09:59  <isaacs>write a standalone script that does fewer things
02:09:59  <jcrugzz>isaacs: the problem is that for some reason, running those commands in parallel causes the process to run out of memory
02:10:02  <jcrugzz>when alone
02:10:09  <isaacs>jcrugzz: run them one after another, then
02:10:11  <jcrugzz>they do not fill up 256mb of memory
02:10:15  <isaacs>k
02:10:20  <isaacs>sounds like you have a workaround
02:10:54  <isaacs>if it was "not releasing memory", then it wouldn't matter how you ran them
02:11:09  <isaacs>the problem is just that doing those two operations together crashes you
02:11:13  <isaacs>but, look at the moving parts here:
02:11:14  <isaacs>node-tar
02:11:17  <isaacs>child_process
02:11:20  <isaacs>solenoid
02:11:27  <isaacs>async.parallel, series, etc.
02:12:04  <isaacs>jcrugzz: there's a lot of room for someone to be leaking memory, but you have no idea if it's even a leak, or just "doing too much stuff all at once" that's killing your process.
02:13:06  <jcrugzz>isaacs: this is true, why my assumption became that memory was not being released
02:13:16  <jcrugzz>was that this issue is only happening with snapshots that are of a particular size
02:13:31  <jcrugzz>around 70mb+
02:13:36  <jcrugzz>anything below that
02:13:43  <jcrugzz>these sequence of events worked completely fine
02:14:19  <jcrugzz>hence why i wanted to use node-tar to try and solve the problem, but that just pushed the problem farther down the chain
02:14:24  <jcrugzz>which is odd
02:14:25  <isaacs>jcrugzz: oh, wait, this is nodejitsu! you're on smartos. get dude, a core dump when it crashes, then run mdb over that shiz
02:14:35  <isaacs>::findjsobjects will tell you exactly where your memory is
02:14:40  <jcrugzz>word
02:15:05  <isaacs>s/get dude, a core dump/dude, get a core dump/
02:15:26  <isaacs>jcrugzz: i forget what it is, but there's a v8 flag to dump core when you crash
02:15:48  <isaacs>jcrugzz: node --v8-options will list all the v8 options
02:16:02  <isaacs>$ node --v8-options | grep dump
02:16:02  <isaacs> --abort_on_uncaught_exception (abort program (dump core) when an uncaught exception is thrown)
02:16:03  <jcrugzz>isaacs: alright cool, this will be useful
02:16:09  <isaacs>then that'll create a core file
02:16:15  <isaacs>mdb <tehcore>
02:16:24  <isaacs>then, in mdb, ::load v8.so
02:16:31  <isaacs>then, ::findjsobjects
02:16:39  <isaacs>go get dinner, come back, and it'll show you some stuff
02:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 11]
02:16:48  <isaacs>you might wanna analyze the core on a machine with more than 256mb
02:17:12  <jcrugzz>isaacs: mdb doesnt like small machines?
02:17:24  <jcrugzz>and is there some weird thing with 64bit also?
02:17:30  <isaacs>jcrugzz: well, it's fine, but if it's really that small, i dunno.
02:17:40  <isaacs>jcrugzz: mdb was created when 256 was a big machine :)
02:17:49  <jcrugzz>thats what i thought lol
02:18:07  <isaacs>but presumably, the core dump will be quite large
02:18:13  <isaacs>if it was big enough to cause the process to crash
02:19:16  <jcrugzz>ah ok
02:22:21  * thlorenzjoined
02:26:01  <jcrugzz>isaacs: alright, ill get my feet wet with some mdb and report back ;). we will see where the problem lies
02:26:14  * fallsemojoined
02:26:33  <isaacs>jcrugzz: happy hunting
02:26:35  * thlorenzquit (Ping timeout: 248 seconds)
02:26:40  <isaacs>jcrugzz: ::findjsobjects is neat stuff.
02:26:48  <isaacs>jcrugzz: search the interwobz for more info on it
02:26:55  <jcrugzz>will do
02:29:56  * Maciek416quit (Remote host closed the connection)
02:30:31  * Maciek416joined
02:34:28  * Maciek416quit (Ping timeout: 240 seconds)
02:40:55  <chapel>isaacs: any way we could get npm-www pull requests handled?
02:41:14  <isaacs>chapel: i've been going through them bit by bit
02:41:19  <isaacs>chapel: any in particular you're interested in?
02:41:24  <chapel>well, mine :)
02:41:28  <chapel>its very simple
02:41:47  <chapel>its in such demand, someone submitted the same change as a pr
02:41:48  <chapel>:P
02:43:12  <chapel>fyi https://github.com/isaacs/npm-www/pull/375
02:46:02  * Maciek416joined
02:46:28  <rowbit>substack, pkrumins: These encoders are STILL down: 173.203.67.76(free3)
02:47:10  * Maciek416quit (Remote host closed the connection)
02:47:46  * Maciek416joined
02:50:26  <isaacs>chapel: pushed
02:50:27  <isaacs>thanks
02:51:09  <chapel>:)
02:51:12  <chapel>thanks
02:51:17  <chapel>glad to have that
02:51:26  <isaacs>np
02:52:27  * Maciek416quit (Ping timeout: 268 seconds)
02:54:37  <chapel>works like a charm :)
02:54:43  <chapel>are you going to jsfest?
02:56:59  * Maciek416joined
03:03:28  * mikolalysenkoquit (Ping timeout: 240 seconds)
03:09:16  <isaacs>yes, i'll be tehre
03:12:10  * Maciek416quit (Remote host closed the connection)
03:12:42  * Maciek416joined
03:15:09  * fallsemoquit (Quit: Leaving.)
03:16:25  * dguttmanquit (Quit: dguttman)
03:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 14]
03:17:07  * Maciek416quit (Ping timeout: 268 seconds)
03:30:08  * mikolalysenkojoined
03:45:30  * michaelrhodesjoined
03:46:23  * Maciek416joined
03:55:50  * mikolalysenkoquit (Ping timeout: 245 seconds)
04:01:19  * michaelrhodesquit (Quit: Leaving)
04:02:04  * michaelrhodesjoined
04:13:30  * DTrejojoined
04:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 155]
04:22:18  * mikolalysenkojoined
04:23:35  * thlorenzjoined
04:27:56  * thlorenzquit (Ping timeout: 245 seconds)
04:33:29  * kriskowalquit (Quit: kriskowal)
04:34:53  * jcrugzzquit (Quit: leaving)
04:36:18  * jcrugzzjoined
04:44:43  * dguttmanjoined
04:54:08  * dguttmanquit (Quit: dguttman)
04:55:21  * charliesomequit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
05:02:44  * charliesomejoined
05:10:03  * charliesomequit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
05:12:57  <jcrugzz>isaacs: how do i get my hands on a 64bit v8.so? or do i have to run this shenanigans on 32 bit
05:16:30  * dguttmanjoined
05:16:44  <rowbit>Hourly usage stats: [developer: 0, free: 104]
05:16:45  <DTrejo>check it out y'all https://github.com/DTrejo/ampline
05:33:44  * dstokesquit (Quit: dstokes)
05:44:53  * Maciek416quit (Remote host closed the connection)
05:45:26  * Maciek416joined
05:50:19  * Maciek416quit (Ping timeout: 272 seconds)
06:12:41  * tilgoviquit (Ping timeout: 245 seconds)
06:13:42  * DTrejoquit (Remote host closed the connection)
06:14:09  * DTrejojoined
06:16:06  * shamaquit (Remote host closed the connection)
06:16:44  <rowbit>Daily usage stats: [developer: 8, free: 1900]
06:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 521]
06:18:28  * DTrejoquit (Ping timeout: 240 seconds)
06:23:20  * dguttmanquit (Quit: dguttman)
06:24:54  * thlorenzjoined
06:29:22  * thlorenzquit (Ping timeout: 246 seconds)
07:01:10  <grncdr>substack: radical
07:08:06  * jcrugzzquit (Ping timeout: 252 seconds)
07:14:16  * DTrejojoined
07:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 87]
07:18:59  * DTrejoquit (Ping timeout: 272 seconds)
07:25:53  * thlorenzjoined
07:30:03  * thlorenzquit (Ping timeout: 248 seconds)
07:44:08  * mikolalysenkoquit (Ping timeout: 268 seconds)
08:10:33  * mikolalysenkojoined
08:16:44  <rowbit>Hourly usage stats: [developer: 0, free: 27]
08:26:32  * thlorenzjoined
08:30:51  * thlorenzquit (Ping timeout: 248 seconds)
08:42:42  * yorickjoined
08:46:29  <rowbit>substack, pkrumins: These encoders are STILL down: 173.203.67.76(free3)
09:16:44  <rowbit>Hourly usage stats: [developer: 0, free: 20]
09:27:09  * thlorenzjoined
09:31:43  * thlorenzquit (Ping timeout: 272 seconds)
10:12:31  * mikolalysenkoquit (Ping timeout: 272 seconds)
10:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 30]
10:27:51  * thlorenzjoined
10:32:16  * thlorenzquit (Ping timeout: 245 seconds)
10:38:11  * mikolalysenkojoined
11:16:44  <rowbit>Hourly usage stats: [developer: 0, free: 12]
11:28:51  * thlorenzjoined
11:31:06  * jibayjoined
11:33:08  * thlorenzquit (Ping timeout: 240 seconds)
12:16:44  <rowbit>Hourly usage stats: [developer: 0, free: 25]
13:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 12]
13:30:03  * thlorenzjoined
13:34:08  * thlorenzquit (Ping timeout: 240 seconds)
13:34:10  * jergasonjoined
13:43:06  * charliesomejoined
13:43:47  * charliesomepart
14:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 30]
14:30:40  * thlorenzjoined
14:35:07  * thlorenzquit (Ping timeout: 248 seconds)
14:43:44  * Maciek416joined
14:46:30  <rowbit>substack, pkrumins: These encoders are STILL down: 173.203.67.76(free3)
14:59:31  * kenperkinsquit (Quit: Computer has gone to sleep.)
15:01:07  * kenperkinsjoined
15:05:17  * Maciek416quit (Remote host closed the connection)
15:05:50  * Maciek416joined
15:08:12  * Maciek416quit (Read error: Connection reset by peer)
15:08:24  * Maciek416joined
15:14:27  * dguttmanjoined
15:16:45  <rowbit>Hourly usage stats: [developer: 4, free: 47]
15:25:25  * jergasonquit (Quit: jergason)
15:25:49  * kenperkinsquit (Quit: Computer has gone to sleep.)
15:31:40  * thlorenzjoined
15:34:44  * kenperkinsjoined
15:36:47  * thlorenzquit (Ping timeout: 272 seconds)
15:38:49  * defunctzombie_zzchanged nick to defunctzombie
15:40:31  * kenperkinsquit (Quit: Computer has gone to sleep.)
15:48:43  * mikolalysenkoquit (Ping timeout: 248 seconds)
15:53:16  * defunctzombiechanged nick to defunctzombie_zz
15:54:30  * mikolalysenkojoined
15:57:41  * kenperkinsjoined
16:00:45  * DTrejojoined
16:01:05  * DTrejoquit (Read error: Connection reset by peer)
16:01:39  * thlorenzjoined
16:02:59  * dstokesjoined
16:11:12  * thlorenzquit (Remote host closed the connection)
16:15:46  * kenperkinsquit (Quit: Computer has gone to sleep.)
16:15:51  * dstokesquit (Quit: dstokes)
16:16:45  <rowbit>Hourly usage stats: [developer: 3, free: 53]
16:20:23  * thlorenzjoined
16:29:04  * thlorenzquit (Remote host closed the connection)
16:37:06  * thlorenzjoined
16:37:23  * AvianFlujoined
16:38:02  * thlorenzquit (Remote host closed the connection)
16:43:44  * Maciek416quit (Remote host closed the connection)
16:43:51  * kriskowaljoined
16:44:17  * Maciek416joined
16:49:05  * Maciek416quit (Ping timeout: 272 seconds)
16:54:22  * jergasonjoined
16:58:56  * mikolalysenkoquit (Ping timeout: 245 seconds)
17:12:45  * tilgovijoined
17:12:45  * tilgoviquit (Remote host closed the connection)
17:16:45  <rowbit>Hourly usage stats: [developer: 1, free: 6]
17:24:47  * mikolalysenkojoined
17:38:44  * jolissjoined
17:39:29  * jibay_joined
17:40:15  * timoxleyquit (Remote host closed the connection)
17:40:56  * timoxleyjoined
17:42:25  * thlorenzjoined
17:42:48  * jibayquit (Ping timeout: 252 seconds)
17:45:13  * timoxleyquit (Ping timeout: 246 seconds)
17:50:29  * thlorenzquit (Ping timeout: 246 seconds)
17:55:27  * mikolalysenkoquit (Ping timeout: 252 seconds)
18:06:28  * jergasonquit (Quit: jergason)
18:09:02  * jergasonjoined
18:16:45  <rowbit>Hourly usage stats: [developer: 8, free: 18]
18:21:44  * mikolalysenkojoined
18:51:36  * timoxleyjoined
18:53:30  * kriskowalquit (Quit: kriskowal)
18:55:55  * timoxleyquit (Ping timeout: 246 seconds)
19:16:45  <rowbit>Hourly usage stats: [developer: 1, free: 20]
19:33:43  * dstokesjoined
19:38:05  <anvaka>I'm trying to come up with graph traversal api. Just wondering what do you think about this: https://gist.github.com/anvaka/7149637 ? is it intuitive or not?
19:41:47  * evboguequit (Read error: Connection reset by peer)
19:43:09  * brycebariljoined
19:44:09  * evboguejoined
19:47:39  * thlorenzjoined
19:48:35  * kriskowaljoined
19:51:55  * thlorenzquit (Ping timeout: 248 seconds)
20:16:45  <rowbit>Hourly usage stats: [developer: 1, free: 20]
20:17:43  * dstokesquit (Quit: dstokes)
20:21:40  * hij1nxquit (Ping timeout: 245 seconds)
20:30:13  * jergasonquit (Quit: goodbye rad world)
20:30:54  * dstokesjoined
20:41:22  * michaelrhodesquit (Ping timeout: 240 seconds)
20:46:30  <rowbit>substack, pkrumins: These encoders are STILL down: 173.203.67.76(free3)
20:48:16  * thlorenzjoined
20:50:10  * dstokesquit (Quit: dstokes)
20:53:12  * thlorenzquit (Ping timeout: 272 seconds)
20:57:15  <grncdr>anvaka: it seems like the filtering could be done with data vs. method calls
20:57:45  <grncdr>traverse(graph).links({to: someNodeId})
20:59:42  <grncdr>actually, links(graph, {to: someNode})
21:01:23  <grncdr>I don't know how elaborate you want to make the API, I'm just simplifying based on the examples in the gist
21:01:50  <grncdr>also, you might check out Gremlin for inspiration
21:16:44  <rowbit>Hourly usage stats: [developer: 0, free: 18]
21:20:06  * defunctzombie_zzchanged nick to defunctzombie
21:40:49  <jjjohnny>isaacs: you can close my pull request then https://github.com/isaacs/npm-www/pull/420
21:46:54  * dstokesjoined
21:48:53  * thlorenzjoined
21:53:59  * thlorenzquit (Ping timeout: 272 seconds)
22:16:45  <rowbit>Hourly usage stats: [developer: 1, free: 51]
22:19:13  * hij1nxjoined
22:24:07  * thlorenzjoined
22:24:25  * dstokesquit (Quit: dstokes)
22:30:56  * thlorenzquit (Remote host closed the connection)
22:31:13  * Maciek416joined
22:39:05  <chapel>jjjohnny: glad to have that in place finally
22:46:42  * shamajoined
22:50:06  * dstokes_joined
22:52:49  * kriskowalquit (Quit: kriskowal)
22:55:31  * dstokes_quit (Quit: dstokes_)
22:58:31  * thlorenzjoined
22:58:49  * defunctzombiechanged nick to defunctzombie_zz
23:04:29  * AvianFluquit (Remote host closed the connection)
23:04:58  * AvianFlujoined
23:09:59  * AvianFluquit (Ping timeout: 272 seconds)
23:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 7]
23:24:32  * thlorenzquit (Remote host closed the connection)
23:30:40  * thlorenzjoined
23:32:26  * jcrugzzjoined
23:32:33  * yorickquit (Remote host closed the connection)
23:36:51  * thlorenzquit (Remote host closed the connection)
23:45:27  <anvaka>grncdr: thank you
23:49:51  * dstokesjoined
23:49:51  * dstokesquit (Client Quit)