00:00:01  * ircretaryquit (Remote host closed the connection)
00:00:09  * ircretaryjoined
00:01:09  * c4milojoined
00:04:12  <MI61>joyent/node: isaacs v0.8 * 987338f : http: Do not let Agent hand out destroyed sockets Fix #4373 (+1 more commits) - https://github.com/joyent/node/compare/3e2be6f39f70...987338fe31b3
00:13:49  <trevnorris>isaacs: ah crap. just got done running the tests just to realize I forgot to build after checking out the ticker branch...
00:14:13  <trevnorris>isaacs: well, i'll let it run tonight and post the results laster.
00:14:21  * trevnorrisquit (Quit: Leaving)
00:17:17  * c4miloquit (Remote host closed the connection)
00:18:01  * c4milojoined
00:20:53  * kuplatup1uchanged nick to kuplatupsu
00:23:04  * piscisaureus_quit (Ping timeout: 256 seconds)
00:38:04  * TooTallNatequit (Quit: Computer has gone to sleep.)
00:40:36  * qmx|awaychanged nick to qmx
00:42:38  * TooTallNatejoined
00:48:41  * hzquit
00:48:54  * hzjoined
00:52:00  * piscisaureus_joined
00:55:22  * mmaleckichanged nick to mmalecki[zzz]
00:55:47  * rvaggquit (Ping timeout: 244 seconds)
00:56:08  * c4miloquit (Remote host closed the connection)
00:56:54  * c4milojoined
00:58:30  * rvaggjoined
01:11:28  * hij1nxjoined
01:26:23  * hzquit (Remote host closed the connection)
01:29:00  * piscisaureus_quit (Read error: Connection reset by peer)
01:29:37  * piscisaureus_joined
01:36:53  * c4miloquit (Remote host closed the connection)
01:38:21  * piscisaureus_quit (Ping timeout: 245 seconds)
01:40:13  * abraxasjoined
01:48:25  * dapquit (Quit: Leaving.)
02:10:36  * rjequit (Ping timeout: 276 seconds)
02:11:24  * pooyaquit (Quit: pooya)
02:15:58  * rjejoined
02:15:58  * rjequit (Excess Flood)
02:16:37  * rjejoined
02:16:37  * rjequit (Excess Flood)
02:17:41  * rjejoined
02:17:41  * rjequit (Excess Flood)
02:18:33  * rjejoined
02:18:34  * rjequit (Excess Flood)
02:19:33  * rjejoined
02:19:34  * rjequit (Excess Flood)
02:20:33  * rjejoined
02:20:33  * rjequit (Excess Flood)
02:21:03  * rjejoined
02:21:04  * rjequit (Excess Flood)
02:21:35  * rjejoined
02:21:35  * rjequit (Excess Flood)
02:22:06  * rjejoined
02:22:07  * rjequit (Excess Flood)
02:22:38  * rjejoined
02:22:38  * rjequit (Excess Flood)
02:23:33  * rjejoined
02:23:34  * rjequit (Excess Flood)
02:24:15  * qmxchanged nick to qmx|away
02:24:33  * rjejoined
02:24:33  * rjequit (Excess Flood)
02:25:03  * rjejoined
02:25:04  * rjequit (Excess Flood)
02:25:33  * rjejoined
02:25:33  * rjequit (Excess Flood)
02:26:03  * rjejoined
02:26:04  * rjequit (Excess Flood)
02:26:33  * rjejoined
02:26:33  * rjequit (Excess Flood)
02:27:38  * rjejoined
02:27:38  * rjequit (Excess Flood)
02:28:33  * rjejoined
02:28:34  * rjequit (Excess Flood)
02:29:03  * rjejoined
02:29:04  * rjequit (Excess Flood)
02:29:34  * rjejoined
02:29:34  * rjequit (Excess Flood)
02:30:03  * rjejoined
02:30:03  * rjequit (Excess Flood)
02:30:33  * rjejoined
02:30:34  * rjequit (Excess Flood)
02:31:33  * rjejoined
02:31:33  * rjequit (Excess Flood)
02:32:07  * rjejoined
02:32:08  * rjequit (Excess Flood)
02:59:00  * bradleymeckjoined
03:38:00  * brsonquit (Quit: leaving)
03:58:20  * TooTallNatequit (Quit: ["Textual IRC Client: www.textualapp.com"])
04:00:15  * kazuponjoined
04:08:35  * c4milojoined
04:34:55  * c4miloquit (Remote host closed the connection)
04:39:21  * c4milojoined
04:45:23  * c4miloquit (Remote host closed the connection)
05:30:14  * rjejoined
05:33:06  * loladiroquit (Quit: loladiro)
05:37:20  * loladirojoined
05:39:35  * trevnorrisjoined
05:40:06  <trevnorris>isaacs: knock knock
05:42:57  * bradleymeckquit (Quit: bradleymeck)
05:50:16  * rjequit (Quit: Leaving...)
05:56:48  * CAPSLOCKBOTquit (Remote host closed the connection)
05:57:29  * LOUDBOTjoined
05:57:29  * CAPSLOCKBOTjoined
06:00:18  * rjejoined
06:11:42  * bradleymeckjoined
07:05:30  * pooyajoined
07:07:07  * mikealquit (Quit: Leaving.)
07:10:40  * pooyaquit (Quit: pooya)
07:10:55  <txdv>where is pisci and bnoord
07:11:08  <txdv>it is already 8 in the morning!
07:11:14  <trevnorris>bnoordhuis is on a plane to SF iirc
07:11:22  <txdv>lol
07:11:53  <txdv>I find it interesting that some IT people travel so much
07:12:12  <txdv>Of all the proffesions, this one should use the internet for communication
07:12:42  <trevnorris>but it makes the big wigs feel so much better to actually have someone there to push the power button for them ;-)
07:13:23  * mikealjoined
07:21:42  * mmalecki[zzz]changed nick to mmalecki
07:31:28  <brucem>txdv: well, to some extent, we tend to be more farflung because we can use the internet for communication, so we are also likely to have to travel sometimes unlike those sitting in the same office, etc.
07:32:54  * `3rdEdenjoined
07:34:01  <indutny>isaacs: yt?
07:34:15  <indutny>isaacs: trevnorris: how much has tls throughput improved?
07:34:24  <indutny>with streams2 and new implementation
07:34:39  <trevnorris>indutny: well, that depends on who's benchmark you ask.
07:34:52  <indutny>is it generally better? :)
07:35:06  <indutny>if so - can you give me minimum factor
07:35:27  <trevnorris>indutny: here's the logs i've collected: https://gist.github.com/trevnorris/4957420
07:35:50  <trevnorris>a-benchmark2.log are from isaacs test. all the numbers are the same. like something is throttling the sucker.
07:35:50  <indutny>em
07:35:58  <indutny>I can't see tls
07:35:59  <indutny>here
07:36:25  <trevnorris>a-ticker.log is from my benchmarks which have much higher throughput.
07:36:52  <trevnorris>indutny: didn't run everything. this has been more about finding statistical stabilization.
07:37:02  <indutny>ook
07:37:10  <indutny>I just remember isaacs talking about this
07:37:12  <indutny>but can't find the link
07:37:28  <trevnorris>the tests were run hundreds of times to get an idea of what type of distribution they'd have.
07:38:15  <trevnorris>then they were also run in groups so groups could be cross compared.
07:38:32  <trevnorris>even if the tests have high variance, as long as they always have high variance we're ok.
07:40:32  <trevnorris>indutny: i'll add a few of the tls tests and give them a run. will take a while though.
07:40:37  <indutny>trevnorris: nvm
07:40:50  <indutny>I found isaac's gist
07:41:10  <trevnorris>indutny: which one you talking about?
07:41:21  <indutny>https://gist.github.com/isaacs/4760981/raw/2186c8ef8c638509a872af7c19d2d3434e55ede2/compare.html
07:45:53  <trevnorris>indutny: where the ticker will see it's biggest improvements is when nextTick isn't necessary. otherwise it's a small increase (few %) but also a lot less variance in data flow.
07:46:08  <txdv>so bnoord won't be available this weekend?
07:46:58  <trevnorris>indutny: were you seeing regressions in tls from v0.8?
07:47:33  <indutny>regressions?
07:47:36  <indutny>well
07:47:41  <indutny>I think rps was a little bit slower
07:47:51  <indutny>haven't really dug into it yet
07:48:01  <tjfontaine>txdv: he said he'd review a patch by isaacs in "36 hours" which was over 12 hours ago
07:48:15  <txdv>so in 2 days
07:48:44  <txdv>saghul: you there?
07:49:20  <trevnorris>arg... got to stop nesting functions. indutny isn't a fn in a fn a new instance that v8 will have to optimize all over again?
07:49:55  <txdv>funcception
07:49:56  <indutny>not sure I get it
07:50:00  <indutny>:)
07:50:51  <saghul>txdv hoi
07:51:18  <trevnorris>indutny: when running node with pretty much every --trace*, i'm seeing a ton of "optimizing g..." which are always fn's in fn's.
07:51:40  <trevnorris>so v8 sees each fn within a fn as a new instance that needs to be reoptimized.
07:51:57  <trevnorris>not just a single fn that will be re-used for the life of the program.
07:51:58  <indutny>фр
07:51:59  <indutny>ah
07:52:02  <indutny>it should cache it now
07:52:07  <indutny>mraleph has told me so
07:52:28  <indutny>but it might be worth it to move some functions out of scopes
07:52:29  <trevnorris>now as in > 3.15?
07:52:37  <indutny>if its possible
07:52:38  <indutny>well
07:52:40  <indutny>good question
07:59:17  * rendarjoined
08:11:21  * abraxasquit (Remote host closed the connection)
08:15:00  * stagasjoined
08:18:16  <txdv>saghul: awesome comment, now I know what to do
08:18:24  <txdv>thanks
08:18:32  <saghul>txdv you are welcome!
08:28:57  * rvaggquit (Excess Flood)
08:29:22  * rvaggjoined
08:49:13  * benoitcquit (Excess Flood)
08:49:26  <trevnorris>holy crap. .call() is used on every emit?
08:50:12  <txdv>saghul: does this look good? https://github.com/txdv/libuv/commit/480790f7a0df3e0d8d36e2ce6a08400cd15d5ead
08:50:27  * `3rdEden_joined
08:51:41  * loladiroquit (Quit: loladiro)
08:52:14  * `3rdEdenquit (Ping timeout: 252 seconds)
08:57:25  * benoitcjoined
09:04:24  <saghul>txdv uv__set_artificial_error returns -1 already, so you can save the extra line
09:05:26  <txdv>it does
09:05:31  <txdv>i just used the behaviour from tcp
09:06:33  <saghul>i've seen Ben suggest this to others, so I guess is the preferred way even if not used everywhere throughout the code yet
09:07:41  <txdv>I will push a patch immediately
09:10:32  * `3rdEden_changed nick to `3rdEden
09:14:41  <txdv>https://github.com/joyent/libuv/pull/712
09:29:08  * kazuponquit (Remote host closed the connection)
09:31:50  * kazuponjoined
09:41:25  * kazuponquit (Remote host closed the connection)
09:57:34  * piscisaureus_joined
10:15:52  * benoitcquit (Excess Flood)
10:22:58  * benoitcjoined
10:25:04  * bradleymeckquit (Quit: bradleymeck)
10:25:33  * AvianFlu_joined
10:27:33  * AvianFluquit (Ping timeout: 252 seconds)
10:36:12  <txdv>piscisaureus_: hello
10:37:11  <txdv>piscisaureus_: can you pull these: https://github.com/joyent/libuv/pull/712
10:38:01  <piscisaureus_>txdv: lgtm but im drunk so no not right now
10:38:10  <txdv>lol
10:38:15  <txdv>saw that tweet yesterday
10:38:19  <txdv>you went to a bar with someone
10:38:31  <piscisaureus_>yes with matt
10:38:54  <piscisaureus_>lgtm tho - ben will pull it of i will
10:39:04  <txdv>ben is in SF
10:39:35  <txdv>this one too
10:39:36  <txdv>https://github.com/joyent/libuv/pull/710
10:39:54  <txdv>trivial changes, I want to base my not so trivial common error handling on those
10:40:05  <piscisaureus_>Ben is on an airplane now
10:40:18  <piscisaureus_>don't get all entitled :-p
10:40:24  <piscisaureus_>gtg sleep now. lrt
10:40:28  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
10:40:36  <txdv>:D
10:47:33  <mmalecki>I always merge pull requests when drunk
10:47:38  <mmalecki>not sure what's wrong here
10:48:52  <txdv>it is the same like with girls
10:48:59  <txdv>ugly code just looks good when you are drunk
10:49:08  <mmalecki>yup.
10:54:30  * `3rdEdenchanged nick to `3E|LUNCH
10:58:56  * benoitcquit (Excess Flood)
11:03:08  * trevnorrisquit (Quit: Leaving)
11:07:00  * benoitcjoined
11:08:19  * stagasquit (Ping timeout: 260 seconds)
11:28:54  * stagasjoined
11:42:11  * stagasquit (Ping timeout: 252 seconds)
11:48:59  * stagasjoined
12:03:58  * benoitcquit (Excess Flood)
12:06:34  * qmx|awaychanged nick to qmx
12:07:29  * benoitcjoined
12:19:34  * benoitcquit (Excess Flood)
12:22:00  * benoitcjoined
12:56:27  * `3E|LUNCHchanged nick to `3E|SHOPPA
13:00:17  * stagasquit (Ping timeout: 248 seconds)
13:00:41  * stagasjoined
13:17:21  * sgallaghjoined
13:27:10  * hzjoined
13:33:30  * benoitcquit (Excess Flood)
13:36:08  * jmar777joined
13:39:30  * benoitcjoined
13:43:03  <roxlu>hi guys, isn't there a member which contains the post data in nodejs ?
13:50:35  * xaqjoined
14:05:14  * xaqquit (Remote host closed the connection)
14:12:50  * loladirojoined
14:15:15  * c4milojoined
14:18:54  * `3E|SHOPPAchanged nick to `3E
14:34:26  * kazuponjoined
14:34:47  * benoitcquit (Excess Flood)
14:43:01  * benoitcjoined
15:01:20  * `3Echanged nick to `3rdEden
15:05:51  * kazuponquit (Remote host closed the connection)
15:18:36  * xaqjoined
15:23:42  * benoitcquit (Excess Flood)
15:27:00  * benoitcjoined
15:45:25  * AvianFlu_changed nick to AvianFlu
15:48:00  * bradleymeckjoined
16:03:13  * `3rdEdenquit (Quit: /wrists)
16:12:50  * stagas_joined
16:12:51  * pooyajoined
16:15:29  * stagasquit (Ping timeout: 255 seconds)
16:15:41  * stagas_changed nick to stagas
16:16:14  * kazuponjoined
16:16:15  * sgallaghquit (Remote host closed the connection)
16:18:50  * loladiroquit (Quit: loladiro)
16:20:43  * kazuponquit (Ping timeout: 240 seconds)
16:21:48  * TheJHjoined
16:23:48  * loladirojoined
16:24:28  * loladiroquit (Client Quit)
16:26:30  <isaacs>good morning
16:27:37  <isaacs>roxlu: no, yo ujust have to listen to the `data` events, and buffer up the body yourself
16:27:58  <isaacs>roxlu: unlike some *other* systems, we tell you about the request as soon as the headers are parsed, and not a tick later!
16:28:23  <stephank>good evening
16:37:48  <indutny>hello
16:38:02  <indutny>isaacs: guys at yandex were shocked
16:38:10  <indutny>some was looking inspired
16:38:20  <indutny>some dull
16:42:58  * loladirojoined
16:56:27  * loladiroquit (Quit: loladiro)
17:05:05  * bradleymeckquit (Quit: bradleymeck)
17:10:20  * qmxchanged nick to qmx|lunch
17:18:10  <isaacs>indutny: shocked by what?
17:18:11  * stagas_joined
17:18:16  <isaacs>indutny: by node?
17:19:16  <indutny>I think yes
17:19:17  <indutny>:D
17:19:24  <indutny>haha
17:20:15  * stagasquit (Ping timeout: 260 seconds)
17:20:17  * stagas_changed nick to stagas
17:20:49  <indutny>well, they're shocked by streams2
17:21:27  <isaacs>indutny: good shocked or bad shocked?
17:22:23  <indutny>mostly good
17:22:30  <indutny>I don't they really got idea
17:22:38  <indutny>I was like, leaving conference immediately after my talk
17:22:41  <indutny>hopefuly the'
17:22:45  <indutny>they'll send me emails
17:31:04  * pooyaquit (Quit: pooya)
17:35:00  <isaacs>hope so
17:39:58  * qmx|lunchchanged nick to qmx
17:41:11  * xaqquit (Remote host closed the connection)
17:46:43  * benoitcquit (Excess Flood)
17:50:00  * benoitcjoined
17:51:04  * mikealquit (Quit: Leaving.)
17:51:56  * mikealjoined
17:53:25  * pooyajoined
17:57:53  <MI61>joyent/node: isaacs created branch v0.8.20-release - http://git.io/xf7p0w
17:58:07  <isaacs>review changelog? ^
17:58:08  * xaqjoined
17:58:09  <isaacs>not much to show anyway
17:58:17  * trevnorrisjoined
17:59:24  <trevnorris>isaacs: how's it be?
18:01:32  * loladirojoined
18:05:44  <isaacs>trevnorris: how's what be?
18:05:48  <isaacs>is that english?
18:05:50  <isaacs>;P
18:06:18  <trevnorris>life, v0.8.20 release, take your pick =)
18:06:58  <trevnorris>isaacs: so have some unexpected results from the benchmarks: https://gist.github.com/trevnorris/4957420
18:07:17  <trevnorris>isaacs: your benchmarks show up at the top, the ones I had written are below.
18:07:57  <trevnorris>there is something difference in each of are benchmarks that is like throttling the requests. (high/low watermark?)
18:08:46  <trevnorris>so in your benchmarks there is 0 change to raw. that would be very difficult since it's now making > 10k fewer js calls/sec.
18:09:05  * loladiroquit (Quit: loladiro)
18:09:17  <isaacs>trevnorris: if those calls into js are only using CPU, and we're strongly IO bound, that's not super surprising.
18:09:23  <isaacs>it just means we're generating more heat while we wait
18:09:53  <isaacs>trevnorris: so, what is this chart showing?
18:09:59  <isaacs>a-benchmark2.log
18:10:40  <isaacs>trevnorris: it looks like the ticker-* lines are slightly bigger numbers.
18:10:44  <trevnorris><name>-<test>-<type>-<size>-<len>: <req> <stdev>
18:10:58  <isaacs>is ee
18:11:00  <isaacs>*i see
18:11:03  <trevnorris>each test was run 49 times, then there is shown the mean and stdev
18:11:15  <trevnorris>i did that twice for quick comparison.
18:11:22  <isaacs>ticker stddev's are way lower.
18:11:49  <isaacs>if you're doing less CPU, probably less affected by GC pauses, makes sense, kinda
18:11:55  <isaacs>or the machine was just in a better mood.
18:11:59  <isaacs>hard to say :)
18:12:28  <trevnorris>where, there's something strange happening. check out the -net- tests.
18:12:36  <trevnorris>that stdev is way way way too low for 49 runs.
18:12:53  <trevnorris>that's less than 1% of the mean.
18:13:15  <isaacs>hm
18:13:22  <isaacs>well, there ARE fewer moving parts there.
18:13:26  <isaacs>but yeah, that's surprising
18:13:32  <trevnorris>fewer that -raw-?
18:14:46  * stagasquit (Quit: ChatZilla 0.9.90-rdmsoft [XULRunner 1.9.0.17/2009122204])
18:15:07  <trevnorris>also, compare two of our results: (a-ticker.log) ticker-tcp-raw-c2s: ~15.1; (a-benchmark2.log) ticker-raw-buf-102400-3: 13.27
18:15:29  <trevnorris>so there's something different in our two benchmarks that is causing almost 2Gb/sec more traffic.
18:15:59  * loladirojoined
18:20:26  * jmar777quit (Remote host closed the connection)
18:21:04  * jmar777joined
18:21:09  * dapjoined
18:23:05  <trevnorris>isaacs: and when i compared our two benchmarks the quickest thing I saw was that i removed the watermarks.
18:23:52  <isaacs>hm
18:24:08  <isaacs>what happens when you make the highWaterMark crazy high?
18:25:53  * jmar777_joined
18:25:54  * jmar777quit (Ping timeout: 264 seconds)
18:26:30  * xaqquit (Read error: Connection reset by peer)
18:26:43  * xaqjoined
18:26:47  <trevnorris>isaacs: wait.... you don't have them in your new benchmarks. was considering the ones you gist'd.
18:27:51  <trevnorris>yours may be a little slimmer than mine. what is going on?
18:28:10  <isaacs>man. i hate benchmarks.
18:32:08  * TooTallNatejoined
18:32:35  <trevnorris>isaacs: ;-)
18:33:40  <isaacs>trevnorris: so, it's "throttling" the net benchmarks, but http is clearly better with the tick changes.
18:33:49  <isaacs>trevnorris: what do you get when you run those benchmarks against v0.8?
18:34:02  <isaacs>if it's also the same, ok, i'll buy that we've got an invalid test on our hands.
18:34:09  <trevnorris>isaacs: oh, you have to be fucking kidding me. no, this is all my fault.
18:34:19  <isaacs>if v0.8 is a bit faster, then i'd suggest that ticker change is not fixing it
18:34:22  <isaacs>wait, what is?
18:34:29  <trevnorris>the times.
18:34:35  <isaacs>ok... :)
18:34:41  <isaacs>i'm curious :)
18:34:50  <trevnorris>I accidently swapped the variables in the bash script so master was running twice.
18:34:55  <isaacs>!
18:34:58  <isaacs>oh noes!
18:35:00  <trevnorris>give me a minute.
18:35:04  <isaacs>k
18:35:34  <isaacs>btw, somewhat off topic, i kinda love hearing the "OMFG, you've gotta be fucking kidding me, i'm an idiot" when debugging, almost as much as i love being the one saying it.
18:35:46  <isaacs>it usually precipitates great enlightenment.
18:45:21  <trevnorris>isaacs: well, i'm having a you from yesterday problem now all the tests are "failing with 2".
18:45:36  <isaacs>?
18:45:40  <isaacs>"failing with 2"?
18:45:45  <isaacs>you mean, ab is failing?
18:46:10  <trevnorris>i should be using wrk. i'm on linux.
18:47:32  <trevnorris>it's just returning "cmt failed with 2"
18:47:47  <isaacs>oh, weird.
18:47:52  <isaacs>so, wrk is failing
18:47:56  <isaacs>is it printing the stdout/stderr?
18:47:57  <isaacs>it should be.
18:49:37  <trevnorris>brb
18:49:38  * trevnorrisquit (Quit: Leaving)
18:50:59  <MI61>joyent/node: isaacs v0.8.20-release * e10c755 : 2013.02.15, Version 0.8.20 (Stable) * npm: Upgrade to v1.2.11 * http: D (+1 more commits) - http://git.io/70JDYA
18:52:09  * trevnorrisjoined
18:56:59  <trevnorris>isaacs: well, that was strange. just deleted all the files then checked them all out again and it's fixed...
18:57:26  <trevnorris>running benchmarks again now.
18:58:24  <isaacs>trevnorris: i'm about to start doing the 0.8.20 release.
18:58:29  <isaacs>trevnorris: are you using smartos?
18:58:42  <isaacs>trevnorris: also: we have a centos and ubuntu machine. i'll send you the whole list.
19:01:12  <trevnorris>isaacs: sorry, i'm afraid to breath. the benchmarks are running. =)
19:01:33  <trevnorris>isaacs: coolio. you mean what do I run locally? ubuntu.
19:01:33  <isaacs>i'll take that as a "no" :)
19:01:50  <isaacs>nono, i meant are you using that smartos zone in joyent cloud that i gave you access to
19:02:27  <trevnorris>ah, not yet. i'll get to that soon, but wanted to hammer out these things first.
19:03:55  <isaacs>well, lemme know when you do
19:04:00  <isaacs>i've got make -j32 running on there
19:04:04  <isaacs>building stuff
19:04:19  <trevnorris>.... whoa. that's a lot of cores.
19:04:25  <isaacs>cloud ftw :)
19:04:31  <isaacs>i think there's only 24 cores, actually
19:04:37  <isaacs>but 32 is a rounder number.
19:04:41  <trevnorris>heh
19:04:50  <isaacs>ok, done
19:07:44  <indutny>isaacs: hopefuly last 0.8 release? :)
19:07:51  <indutny>this time changelog is really minimalistic
19:07:54  <isaacs>indutny: yeah
19:08:02  <isaacs>but really important bugfixes.
19:08:10  <isaacs>i'd almost consider backporting to v0.6
19:08:35  <indutny>oh
19:08:36  <indutny>btw
19:08:40  <indutny>yandex guys are still using 0.6
19:08:41  <indutny>hehe
19:08:45  <trevnorris>isaacs: oh, much better: https://gist.github.com/trevnorris/4957420/raw/526ff35553f71c1c3a05c56a7d5bc71d74fa600b/a-benchmark2.log
19:08:47  <indutny>on many projects
19:08:56  <indutny>I told them to wait for 0.10
19:08:59  <isaacs>yeah
19:09:03  * isaacsshrug
19:09:03  <indutny>because upgrading to 0.8 doesn't make any sense right now
19:09:10  * dapquit (Read error: Connection reset by peer)
19:09:11  <isaacs>well, it still makes sense if you're on v0.6
19:09:14  <isaacs>we DID fix a lot of bugs.
19:09:16  <isaacs>and it's much faster.
19:09:20  <isaacs>v0.6 is stone man ancient
19:09:27  <indutny>0.4 is
19:09:29  <isaacs>banging rocks together technology
19:09:34  <indutny>0.6 is somewhat close to 0.8
19:09:42  <indutny>by ideology
19:10:00  <isaacs>yeah
19:10:04  <indutny>brb
19:10:06  <isaacs>v0.10 is going to hurt for them, i think
19:10:14  <trevnorris>isaacs: ok, so there you'll see the obvious differences between ticker and master. especially in the raw tests.
19:10:44  <isaacs>trevnorris: ok, awesome.
19:10:57  <isaacs>trevnorris: so... i'll land ticker-rethink.
19:11:13  <isaacs>bert and ben already +1'd it, i have no major issues with it. just being careful with speed changes.
19:11:24  <isaacs>the real question is now: how do we make benchmark-refactor-2 worth landing :)
19:11:32  <isaacs>ie, how do we actually use this data, get it reliable, etc.
19:11:49  <isaacs>trevnorris: also, ben and i made wrk build on sunos :)
19:11:56  <isaacs>so we can ditch ab completley
19:12:04  <trevnorris>seriously? awesome. that was quick.
19:12:06  <isaacs>yeah
19:12:22  <isaacs>he did the bulk of it, and i just basically searched a few man pages.
19:12:32  <isaacs>basically just pulled in updates from the redis stuff that wrk uses.
19:12:55  <trevnorris>ah, well hey. whatever works. good bye ab!
19:13:00  <isaacs>just waiting on windows to build, and we're good to release 0.8.20
19:13:36  <trevnorris>sweet.
19:17:47  <trevnorris>isaacs: re bf-2; the two use cases of storing data on the server for tracking and devs using it to test smaller parts, right?
19:18:14  <isaacs>yes
19:18:27  <isaacs>so, primary use case: someone sends a pull req, and i want to see if it's good.
19:18:42  <isaacs>secondary use case: someone landed a patch, and i want to notice that it's bad.
19:19:04  <isaacs>the secondary one requires a bit more work
19:20:40  <ryah>0.9 release today?
19:20:51  <trevnorris>isaacs: how's that?
19:23:44  * xaqquit (Read error: Connection reset by peer)
19:23:45  <MI61>joyent/node: isaacs created tag v0.8.20 - http://git.io/wQpNYw
19:24:05  * xaqjoined
19:24:36  <MI61>joyent/node: isaacs v0.8 * 3f38069 : blog: Release v0.8.20 (+4 more commits) - http://git.io/s49KWw
19:28:28  * stagasjoined
19:28:58  <isaacs>ryah: this evening, yes.
19:29:08  <isaacs>ryah: or maybe over the weekend.
19:29:37  <isaacs>ryah: this connection destroyed handling business took a few days of debugging. set our schedule back somewhat.
19:30:26  <isaacs>ok, i'll be back in a few hours. have fun :)
19:30:27  * isaacs&
19:30:30  <LOUDBOT>BICAMERAL POLITICAL SYSTEM, MOTHERFUCKERS
19:39:17  * brsonjoined
19:44:44  * dapjoined
19:45:14  * benoitcquit (Excess Flood)
19:46:43  * xaq_joined
19:47:27  * xaqquit (Read error: Connection reset by peer)
19:47:31  * xaq_quit (Read error: Connection reset by peer)
19:47:38  * xaqjoined
19:48:04  * xaqquit (Read error: Connection reset by peer)
19:48:24  * xaqjoined
19:53:29  * trevnorrisquit (Quit: Leaving)
19:54:31  * benoitcjoined
19:57:05  * bradleymeckjoined
19:58:41  * benoitcquit (Excess Flood)
20:00:51  <txdv>bnoooooord
20:03:48  * `3rdEdenjoined
20:06:08  * jmar777_quit (Remote host closed the connection)
20:06:44  * jmar777joined
20:07:31  * benoitcjoined
20:08:56  <indutny>bnoooooooooooooord
20:08:57  <indutny>huis
20:09:47  <CoverSlide>http://cdn.memegenerator.net/instances/400x/34916398.jpg
20:11:15  * jmar777quit (Ping timeout: 248 seconds)
20:15:44  * jmar777joined
20:29:37  * jmar777quit (Remote host closed the connection)
20:30:12  * jmar777joined
20:34:11  * jmar777_joined
20:34:14  * jmar777quit (Read error: Connection reset by peer)
20:35:41  * bradleymeck_joined
20:37:42  * TooTallNatequit (Quit: Computer has gone to sleep.)
20:38:59  * bradleymeckquit (Ping timeout: 248 seconds)
20:39:00  * bradleymeck_changed nick to bradleymeck
20:46:56  * jmar777_quit (Read error: Connection reset by peer)
20:47:23  * jmar777joined
21:00:49  * TooTallNatejoined
21:07:36  <dap>Hi isaacs?
21:11:39  * qmxchanged nick to qmx|away
21:23:51  <roxlu>hi, when I have a server, and write to a couple of clients repeatetly and one of the clients disconnects but between the uv_shutdown + uv_close a new uv_write happens, why does it crash with: Assertion failed: (!uv__io_active(&stream->io_watcher, UV__POLLIN) && "stream->read_cb(status=-1) did not call uv_close()"), function uv__read, file src/unix/stream.c, line 995
21:24:06  <roxlu>and how can I make sure that, that doesn't happen?
21:25:54  * jmar777_joined
21:28:41  * jmar777quit (Ping timeout: 255 seconds)
21:29:55  * c4miloquit (Remote host closed the connection)
21:32:15  * jmar777_quit (Remote host closed the connection)
21:32:52  * jmar777joined
21:33:05  * mikealquit (Quit: Leaving.)
21:35:05  <saghul>roxlu was the read callback executed with status == -1?
21:37:16  <roxlu>yes
21:37:18  * jmar777quit (Ping timeout: 264 seconds)
21:37:30  * trevnorrisjoined
21:37:35  <roxlu>saghul: so: read() (status==-1)--> uv_shutdown->uv_close
21:37:48  <saghul>nope
21:37:54  <saghul>you must uv_close
21:38:24  <saghul>if read_cb is called with status -1 you must stop or close
21:38:42  <saghul>you could stop, shutdown, close
21:38:50  <saghul>roxlu ^
21:40:51  <rendar>roxlu: so you add clients from uv_accept callback?
21:40:55  <roxlu>rendar / saghul ths is my code: https://gist.github.com/roxlu/e1e968631d34f55abf71
21:41:06  <roxlu>I'll show you the lines
21:41:51  <roxlu>VPXOutStream is the server, on a new connection it's added to a 'std::vector<VPXConnection*> connections' member: https://gist.github.com/roxlu/e1e968631d34f55abf71#file-vpxstream-cpp-L536
21:41:57  <saghul>roxlu here: https://gist.github.com/roxlu/e1e968631d34f55abf71#file-vpxstream-cpp-L547
21:42:11  <roxlu>saghul: yes?
21:42:13  <saghul>do uv_read_stop if n < 0
21:42:25  <saghul>before doing uv_shutdown
21:42:32  <roxlu>saghul: ok thanks, let me try
21:43:58  <rendar>hmmm, vpx_client_on_shutdown is a shutdown callback? how libuv can recognize when a shutdown happened ? and from where? from t he client?
21:44:32  <roxlu>saghul: still happens
21:44:50  <saghul>hum
21:44:54  <saghul>did you update he gist?
21:44:58  <saghul>*the
21:45:03  <roxlu>no
21:45:14  <roxlu>rendar: vpx_client_on_shutdown is part of my "client"
21:45:40  <saghul>can you?
21:45:41  <roxlu>so the server has: VPXOutStream + VPXConnection, the client is VPXInStream
21:45:42  <roxlu>yes
21:46:04  <roxlu>ok updated
21:47:03  <roxlu>I'll paste my log too
21:47:21  <saghul>do it on the client as well
21:47:36  <saghul>and the first thing, because if error is not UV_EOF you return
21:48:11  <rendar>roxlu: so libuv doesn't have any on_shutdown callback?
21:48:47  <roxlu>it does calls the shutdown callback
21:49:35  <rendar>hmm
21:50:38  <saghul>roxlu i discussed this with Ben a while ago, what he told was: if read fails, not matter the reason, stop or close the handle
21:51:08  <roxlu>saghul: with shutdown ?
21:51:20  <saghul>no, stop with uv_read_stop
21:52:04  <txdv>Hm I have to check if I am doing this
21:52:07  <saghul>you'll also need it here: https://gist.github.com/roxlu/e1e968631d34f55abf71#file-vpxstream-cpp-L642
21:52:08  <roxlu>ok I'm adding that directly in my if(read < 0)
21:52:14  <saghul>right
21:52:28  <saghul>txdv this is not needed on Windows IIRC
21:52:41  <txdv>i'm not on windows
21:53:00  <saghul>oh, then you may need it indeed
21:53:08  <saghul>I had to add it: https://github.com/saghul/pyuv/blob/master/src/stream.c#L81
21:53:10  <txdv>why do you think I am on windows
21:54:09  <roxlu>ok awesome! tested it 10 times and it doesnt crash on that assert now
21:54:17  <roxlu>thanks a lot gusy! really appreciated
21:54:26  <saghul>I think I confused two different ticket notes
21:54:38  <txdv>Is ben going get online today?
21:54:38  <saghul>roxlu welcome!
21:54:45  <roxlu>it would be so good if this would be added to the 'book'
21:55:00  <saghul>only he knows I guess
21:55:15  <roxlu>I'm not feeling experienced enough to write about this and don't want to write something which isn't correct
21:55:41  <roxlu>whos maintaining this: http://nikhilm.github.com/uvbook/introduction.html is he/she in here?
21:56:00  <saghul>no idea
21:56:08  <txdv>nikhilm
21:56:14  <roxlu>ok
21:56:15  <saghul>maybe open an issue
21:56:18  <txdv>no it is not being maintained
21:56:22  <roxlu>ahh
21:56:24  <txdv>last time I checked there were some differeces
21:56:36  <txdv>it is a good start though
21:56:39  <roxlu>ah yeah
21:57:16  <roxlu>I was reading that and the tests
21:57:24  <roxlu>but the tests I read didn't use uv_read_stop either
21:57:57  <saghul>do they do uv_close?
21:58:06  <roxlu>yes
21:58:13  <roxlu>w/o shutdown
21:58:20  <saghul>that's ok too
21:58:27  <saghul>the connection is dead anyway
21:58:32  <roxlu>oh sorry not true,, sometimes they use shutdown too
21:58:42  <saghul>without shutdown?
21:58:55  <saghul>sorry, without stop?
21:59:02  <roxlu>no with
22:00:00  <saghul>then that ok
22:00:04  <saghul>*that's
22:04:15  * c4milojoined
22:07:56  <roxlu>there are quite some dutch folk in here, isnt it?
22:08:50  <roxlu>wondering if some are going to FITC Amsterdam, http://fitc.ca/event/am13/
22:09:50  * mikealjoined
22:17:53  * loladiroquit (Quit: loladiro)
22:23:32  * rendarquit
22:51:04  * bnoordhuisjoined
23:00:00  * trevnorrisquit (Quit: Leaving)
23:05:42  <saghul>i didn't know about it, can't make it though :-S
23:11:44  * bnoordhuisquit (Ping timeout: 255 seconds)
23:14:13  * TheJHquit (Ping timeout: 240 seconds)
23:14:33  * jmar777joined
23:15:14  * mikealquit (Quit: Leaving.)
23:16:52  * mikealjoined
23:18:21  * mikealquit (Client Quit)
23:24:10  * xaqquit (Remote host closed the connection)
23:48:31  * mikealjoined
23:48:51  <isaacs>going to fix this ECONNRESET, land trevor's nexttick changes, and then start 0.9.10
23:49:04  <isaacs>it's friday night! time for a node release!
23:50:31  <tjfontaine>isaacs: shigeki did refresh https://github.com/joyent/node/pull/3872 if you want to give it a review and try and get it in for .9.10 :)
23:50:59  <isaacs>kewl
23:52:14  <dap>isaacs: I filed https://github.com/joyent/node/issues/4785 for the issue Bert and I were debugging yesterday.
23:52:54  <isaacs>dap: awesome, thanks!
23:52:58  <isaacs>dap: this is 0.8, right?
23:53:39  <isaacs>dap: hm. should have probably fixed it before 0.8.20, but wanted to put out the fires.
23:54:01  <isaacs>dap: oh, iiuc, then, libuv has to be changed for this?
23:54:26  <dap>isaacs: Yes, AIUI.
23:54:32  <isaacs>ok
23:55:01  <isaacs>piscisaureus and bnoordhuis are probably not going to get much done before next week anyway. and i'm not super comfortable landing a libuv patch without either of them reviewing it.
23:55:10  <dap>Yeah, I'm not *that* familiar with libuv, so someone should check my analysis.
23:55:10  <isaacs>so, we'll probably have a 0.8.21, with just that fix.
23:55:18  <dap>Sounds good.
23:55:34  <isaacs>well... a "we don't check for X because it can't happen" ==> assert() or gtfo
23:55:54  <isaacs>at *least* you're right in that bit. whether or not that's the root of the problem is a bit less clear.
23:56:19  <tjfontaine>the break down of this bug is amazing btw.
23:56:42  <isaacs>tjfontaine: these joyent guys really analyze the shit out of node bugs, i'm tellin ya
23:56:43  * bnoordhuisjoined
23:56:55  <tjfontaine>no kidding.
23:58:00  * `3rdEdenquit (Remote host closed the connection)
23:58:13  <isaacs>tjfontaine: do immediates work with domains?
23:58:24  <tjfontaine>I believe i have a test for them already
23:59:17  <tjfontaine>ya, test-domain-timers has a setImmediate check