02:01:17  * ralphtheninjaquit (Ping timeout: 252 seconds)
02:54:26  * Pwnnajoined
03:15:17  * Pwnnaquit (Ping timeout: 256 seconds)
03:38:46  * Pwnnajoined
03:39:44  * timoxleyjoined
03:57:45  * Pwnnaquit (Read error: Connection reset by peer)
04:16:17  * levelbotjoined
04:20:38  * Pwnnajoined
04:38:59  * brycebariljoined
04:42:33  * Pwnnaquit (Ping timeout: 256 seconds)
05:03:23  * timoxleyquit (Quit: Computer has gone to sleep.)
07:07:27  * wolfeidaujoined
08:01:28  <rvagg>this latest memory leak is a tricky one, I've narrowed it down to LevelDB itself! but that obviously doesn't seem right; these guys are much smarter than me
08:01:29  <rvagg>but...
08:01:35  <rvagg>will gist in a mo, it's crazyness
08:17:24  * ralphtheninjajoined
08:56:20  * timoxleyjoined
09:26:17  <rvagg>ok, I think I've worked it out mostly
09:28:11  <levelbot>[npm] leveldown@0.4.4 <http://npm.im/leveldown>: A Node.js LevelDB binding, primary backend for LevelUP (@rvagg)
09:36:36  <rvagg>https://github.com/rvagg/node-leveldown/issues/44#issuecomment-18097961
10:07:25  <rvagg>this is a nifty new interface on leveldown@0.4.4, very interesting data to watch: https://github.com/rvagg/node-leveldown/#leveldown_getProperty
10:08:00  <rvagg>I guess that deserves a minor version bump, I'll take it up to 0.5.0 before we ship this next levelup
10:16:04  <dominictarr>juliangruber: rvagg can you link me to the chained batch code?
10:17:09  <rvagg>dominictarr: this commit, or the one before it, or just the whole 0.9-wip branch: https://github.com/rvagg/node-levelup/commit/0f65d96e5e4d21d2d1f31179df0b5d811cda5cea
10:18:16  <rvagg>Batch#put(key, value[, options]), Batch#del(key[, options]), Batch#clear(), Batch#write([cb])
10:19:07  <rvagg>this.ops tracking the changes all the way, equivalent of what you'd submit to a standard batch(array)
10:19:39  <dominictarr>right.
10:19:57  <dominictarr>so, that will be different using leveldown chained batches?
10:20:09  <dominictarr>isn't that where the perf improvement comes from?
10:20:23  <rvagg>yeah, this.ops is only there so it has an array to emit for the 'batch' event
10:20:40  <rvagg>other than that, it's not being used for anything useful
10:21:08  <dominictarr>oh, right
10:21:09  * levelbotquit (Remote host closed the connection)
10:21:28  * levelbotjoined
10:21:29  <levelbot>[npm] leveldown@0.4.4 <http://npm.im/leveldown>: A Node.js LevelDB binding, primary backend for LevelUP (@rvagg)
10:23:08  <rvagg>hm, levelbot your repetition bug is supposed to be fixed...
10:23:13  <dominictarr>rvagg: I don't think the chainable api will be just as simple, maybe even simpler
10:25:40  <rvagg>dominictarr: does clear() mess it up though? and the fact that they aren't committed until write() is called?
10:26:21  <rvagg>I guess if you're just amending the current batch it shouldn't matter
10:28:34  <dominictarr>oh, clear aborts the batch?
10:30:26  <dominictarr>rvagg: yeah, you should not start another write op from a pre hook, because one could fail, and the other succeed and you'd have inconsistent data.
10:31:03  <rvagg>clear() doesn't abort but it clears previous operations on that batch so you can start fresh
10:33:33  <dominictarr>so you can reuse the batch object?
10:33:42  <dominictarr>or do you abort the previous items?
10:36:36  <rvagg>you can keep on using it until you write()
10:36:56  <rvagg>actually, that's probably something we need to ensure--that it can't be reused after a write(), that needs tests
11:32:54  <levelbot>[npm] leveldown@0.5.0 <http://npm.im/leveldown>: A Node.js LevelDB binding, primary backend for LevelUP (@rvagg)
14:04:42  * harethjoined
14:58:15  * harethquit (Quit: hareth)
14:59:48  * harethjoined
15:29:56  * brianloveswordsquit (Excess Flood)
15:30:03  * brianloveswordsjoined
15:34:03  * Pwnnajoined
15:47:11  * No9joined
15:48:31  * ingsocjoined
15:59:04  * ingsocpart
16:31:55  * levelbotquit (Remote host closed the connection)
16:32:43  * levelbotjoined
16:58:35  * Pwnnaquit (Ping timeout: 260 seconds)
18:40:34  * dominictarrquit (Quit: dominictarr)
18:45:21  * No9quit (Ping timeout: 248 seconds)
18:47:30  * No9joined
19:52:03  * harethquit (Quit: hareth)
20:42:11  * dominictarrjoined
21:10:03  * Pwnnajoined
21:15:45  * Num9joined
21:16:17  * No9quit (Ping timeout: 252 seconds)
21:34:29  * werlejoined
21:35:35  * Pwnnaquit (Remote host closed the connection)
21:45:35  * No9joined
21:48:13  * Num9quit (Ping timeout: 256 seconds)
22:46:14  * Num9joined
22:49:05  * No9quit (Ping timeout: 248 seconds)
22:51:21  * werlequit (Quit: Leaving.)
23:34:43  * levelbotquit (Ping timeout: 264 seconds)
23:35:16  * levelbotjoined