00:02:21  * wolfeidauquit (Remote host closed the connection)
00:13:22  * keslaquit (Ping timeout: 246 seconds)
00:25:16  * gwenbellquit (Ping timeout: 246 seconds)
00:32:26  * thlorenzjoined
00:55:50  * eugenewarejoined
01:04:17  * no9quit (Quit: Leaving)
01:05:57  * eugenewarequit (Ping timeout: 276 seconds)
01:12:07  * eugenewarejoined
01:14:50  * wolfeidaujoined
01:21:13  * wolfeidauquit (Read error: Connection reset by peer)
01:22:19  * wolfeidaujoined
01:22:54  * eugenewarequit (Ping timeout: 264 seconds)
01:23:59  * eugenewarejoined
01:30:52  * eugenewa_joined
01:32:44  * eugenewa_quit (Read error: Connection reset by peer)
01:34:29  * eugenewarequit (Ping timeout: 248 seconds)
01:34:48  * eugenewa_joined
01:38:49  * wolfeidauquit (Read error: Connection reset by peer)
01:39:50  * eugenewa_quit (Ping timeout: 240 seconds)
01:40:31  * wolfeidaujoined
01:43:29  * eugenewarejoined
01:43:56  * mcollinajoined
01:52:55  * eugenewarequit (Remote host closed the connection)
01:54:07  * wolfeidauquit (Remote host closed the connection)
02:09:32  * mikealjoined
02:10:16  * mikealquit (Client Quit)
02:26:50  * jxsonjoined
02:35:18  * jxsonquit (Remote host closed the connection)
02:36:52  * jxsonjoined
02:36:56  * jxsonquit (Remote host closed the connection)
02:42:29  * eugenewarejoined
02:52:54  * eugenewarequit (Ping timeout: 264 seconds)
02:54:35  * gwenbelljoined
03:03:50  * gwenbellquit (Ping timeout: 240 seconds)
03:08:07  * wolfeidaujoined
03:08:25  * wolfeidauquit (Remote host closed the connection)
03:09:59  * mikealjoined
03:13:50  * gwenbelljoined
03:14:26  * gwenbellquit (Client Quit)
03:20:33  * wolfeidaujoined
03:21:42  * eugenewarejoined
03:24:05  * thlorenzquit (Remote host closed the connection)
03:34:56  * tmcwjoined
03:34:59  * tmcwquit (Remote host closed the connection)
03:46:43  * mikealquit (Ping timeout: 264 seconds)
03:48:37  * timoxleyjoined
03:54:15  * timoxleyquit (Ping timeout: 260 seconds)
04:01:00  * wolfeidauquit (Remote host closed the connection)
04:12:16  * mikealjoined
04:27:28  * ralphtheninjaquit (Ping timeout: 264 seconds)
04:28:25  * timoxleyjoined
04:29:08  * timoxleyquit (Remote host closed the connection)
04:41:51  * eugenewarequit (Remote host closed the connection)
04:42:20  * eugenewarejoined
04:50:31  * eugenewarequit (Read error: Connection reset by peer)
05:15:13  * chapeljoined
05:29:22  * mikealquit (Read error: Connection reset by peer)
05:34:01  * mikealjoined
07:07:02  * eugenewarejoined
07:48:55  * mikealquit (Quit: Leaving.)
08:13:59  * eugenewarequit (Remote host closed the connection)
08:34:11  * mikealjoined
08:39:22  * tomerdjoined
08:42:29  * jcrugzzquit (Ping timeout: 264 seconds)
08:46:35  * eugenewarejoined
09:34:03  * jcrugzzjoined
09:39:14  * keslajoined
09:54:45  * tomerdquit (Remote host closed the connection)
09:55:22  * tomerdjoined
10:00:15  * tomerdquit (Ping timeout: 276 seconds)
10:11:58  * tomerdjoined
10:26:51  * tomerdquit (Remote host closed the connection)
10:27:24  * tomerdjoined
10:28:02  <rvagg>PAXOS FOR LEVEL?? WHEN?
10:28:08  <rvagg>then someone do RAFT
10:28:14  * rvaggis tempted to mess with raft
10:29:30  * keslaquit (Ping timeout: 264 seconds)
10:31:33  * tomerdquit (Ping timeout: 248 seconds)
10:53:19  * jcrugzzquit (Quit: leaving)
11:05:45  * ralphtheninjajoined
11:14:06  * no9joined
11:17:11  * tomerdjoined
12:10:04  * eugenewarequit (Remote host closed the connection)
12:14:09  * tomerdquit (Remote host closed the connection)
12:14:42  * tomerdjoined
12:16:11  * tomerdquit (Read error: No route to host)
12:16:29  * tomerdjoined
12:26:15  * eugenewarejoined
12:40:37  * tomerdquit (Remote host closed the connection)
12:41:12  * tomerdjoined
12:41:35  * tomerdquit (Read error: No route to host)
12:42:02  * tomerdjoined
12:56:18  * eugenewarequit (Remote host closed the connection)
13:06:05  * tomerdquit (Remote host closed the connection)
13:06:40  * tomerdjoined
13:07:17  * tomerdquit (Read error: Connection reset by peer)
13:07:43  * tomerdjoined
13:09:20  <prettyrobots>rvagg: Paxos, right here.
13:09:36  <prettyrobots>I'll be working on it after I'm done with Locket.
13:10:08  <prettyrobots>Anyone want to talk file flushing.
13:13:15  <prettyrobots>rvagg: https://github.com/bigeasy/paxos/issues/1
13:13:32  <prettyrobots>Please let me know your thoughts on what Paxos needs to be to support your application develoment.
13:26:49  * eugenewarejoined
13:37:23  * eugenewarequit (Ping timeout: 256 seconds)
13:47:39  * tomerdquit (Remote host closed the connection)
13:48:18  * tomerdjoined
13:51:56  * tomerd_joined
13:52:10  * tomerdquit (Read error: No route to host)
13:59:59  * tomerd_quit (Remote host closed the connection)
14:00:33  * tomerdjoined
14:05:18  * tomerdquit (Ping timeout: 264 seconds)
14:10:55  * tomerdjoined
14:15:46  * tomerdquit (Remote host closed the connection)
14:16:19  * tomerdjoined
14:16:28  * tomerdquit (Read error: Connection reset by peer)
14:16:50  * dominictarrjoined
14:17:02  * tomerdjoined
14:25:23  * dominictarrquit (Quit: dominictarr)
14:56:37  * eugenewarejoined
15:01:02  * eugenewarequit (Ping timeout: 240 seconds)
15:07:03  * dominictarrjoined
15:14:07  <dominictarr>mbalho: yo
16:07:36  <prettyrobots>New JSON leaf format for Strata.
16:07:50  * tmcwjoined
16:08:16  <prettyrobots>Now it's a matter of implementing a few functions to write out binary instead of JSON and I have a b-tree with a binary storage format.
16:10:17  * tmcwquit (Remote host closed the connection)
16:16:02  <dominictarr>prettyrobots: sweet!
16:22:50  * tomerdquit (Remote host closed the connection)
16:23:26  * tomerdjoined
16:24:31  * tmcwjoined
16:27:23  * tomerdquit (Ping timeout: 240 seconds)
16:28:23  * mcollinaquit (Ping timeout: 260 seconds)
16:36:41  <prettyrobots>My recent changes have left a line deep in the balancing code uncovered by unit testing.
16:37:08  <prettyrobots>Getting coverage on this project has been a real challenge.
16:38:48  <prettyrobots>Here's a general question...
16:39:25  * tmcwquit (Remote host closed the connection)
16:39:30  <prettyrobots>Where do you like to record your thoughts as your programming? I mean long form and for public consumption? Do you blog, gists, Tumblr?
16:48:22  <dominictarr>prettyrobots: generally, gists.
16:48:35  * mikealquit (Quit: Leaving.)
16:48:41  <dominictarr>usually I just share that with people directly
16:48:57  <dominictarr>when you say "thoughts" how specific are you being?
16:51:34  <prettyrobots>dominictarr: The thought process. Stuff like this...
16:51:50  <dominictarr>prettyrobots: IRC!
16:51:52  <prettyrobots>https://github.com/bigeasy/strata/blob/master/diary.md
16:52:19  <prettyrobots>I believe that IRC hurts a project's adoption.
16:52:39  <prettyrobots>There's no long form or even cogent writing anywhere for people to absorb.
16:58:01  * tomerdjoined
16:59:59  <dominictarr>hmm, but it's the developers who need to understand how it works, users just need to understand the api design
17:01:01  <dominictarr>normally I put stuff like this just as comments inside my code
17:01:17  <dominictarr>or github issues
17:01:39  <dominictarr>yeah, git hub issues are probably best, because mulitple can take part
17:02:03  <dominictarr>and since they get notified of additional comments if they do.
17:02:52  * tmcwjoined
17:31:02  * tomerdquit (Remote host closed the connection)
17:31:03  * tmcwquit (Remote host closed the connection)
17:31:37  * tomerdjoined
17:31:54  <prettyrobots>dominictarr: I like of like devs who have a go at letting you know the way things work, who use their internals as a teaching aide.
17:32:05  * mikealjoined
17:33:03  <prettyrobots>Which is why, as long as I'm thinking about these things, I'd like to put it out there so people can poke holes in my reasoning, or else, maybe, actually learn from my reasoning.
17:34:02  <dominictarr>fair enough
17:36:05  * tomerdquit (Ping timeout: 248 seconds)
17:36:24  * tmcwjoined
17:38:24  * tomerdjoined
17:40:35  * tomerdquit (Remote host closed the connection)
17:41:10  * tomerdjoined
17:41:11  <mbalho>i do think we should be writing more high level digestible content
17:41:55  <dominictarr>high-level level digestable content
17:43:59  * mikealquit (Quit: Leaving.)
17:45:23  * tomerdquit (Ping timeout: 240 seconds)
17:48:46  * tomerdjoined
17:49:36  * tmcwquit (Remote host closed the connection)
17:57:30  * tmcwjoined
17:58:14  * mikealjoined
18:04:14  * mikealquit (Quit: Leaving.)
18:09:08  <mbalho>si
18:23:48  <dominictarr>rvagg: you there?
18:30:54  * tmcwquit (Remote host closed the connection)
18:41:25  * tomerdquit (Remote host closed the connection)
18:42:02  * tomerdjoined
18:46:22  * tomerdquit (Ping timeout: 246 seconds)
18:47:19  * tomerdjoined
19:19:52  * tomerdquit (Remote host closed the connection)
19:20:28  * tomerdjoined
19:24:24  * tomerdquit (Ping timeout: 240 seconds)
20:08:58  * Acconutjoined
20:09:04  * Acconutquit (Client Quit)
20:11:57  * tomerdjoined
20:22:37  <prettyrobots>Anyone here given a lot of thought to flushing `fs`?
20:22:46  <prettyrobots>When is a write really written?
20:23:54  <dominictarr>prettyrobots: I think fs.write has a sync: bool option?
20:24:52  <prettyrobots>dominictarr: http://nodejs.org/api/fs.html#fs_fs_fsync_fd_callback
20:24:58  <prettyrobots>That's what's available.
20:25:06  <prettyrobots>But, I'm wondering what the reality of it is.
20:25:39  <prettyrobots>If you wanted to be a a for reals data store, how do you make sure your bits on the platter.
20:25:43  <prettyrobots>?
20:26:10  * mikealjoined
20:26:17  <prettyrobots>I've been doing `fs.close` and hoping for the best, but ...
20:27:00  <prettyrobots>… I'm pretty sure that, in my travels, I've encountered writing that says that sync isn't really final.
20:27:19  <dominictarr>prettyrobots: is there a way to test this?
20:27:28  <dominictarr>experimentally?
20:27:51  <dominictarr>crash asap after you get the fsync cb, and was it really there?
20:28:07  <prettyrobots>dominictarr: Wow. That's one way to go.
20:28:29  <dominictarr>bet you a 6 pack that it is
20:28:50  <prettyrobots>I'm looking through my bookmarks. I had found a really good discussion on PostgreSQL some time back on how they do it.
20:29:17  <prettyrobots>And it's probably a good deal to read the PostgreSQL code, to see where they flush and how they do it.
20:29:29  <prettyrobots>Then compare it to `fs.sync` and see how Node.js does it.
20:29:37  <prettyrobots>Sec. AFK.
20:30:41  * mikealquit (Client Quit)
20:32:51  <prettyrobots>http://www.postgresql.org/message-id/[email protected]
20:33:00  <prettyrobots>That's PostgreSQL attitude.
20:33:21  <prettyrobots>If a PostgreSQL index becomes corrupt, it's something *you* did.
20:33:43  <prettyrobots>I want some of that in my implementation.
20:52:08  <prettyrobots>http://linas.org/linux/raid.html
20:52:11  <prettyrobots>dominictarr: http://linas.org/linux/raid.html
20:52:20  * tomerdquit (Remote host closed the connection)
20:52:47  <prettyrobots>My notes: Highly ranked on Google, yet quite old. First written in 1996. Last updated in 2008. A discussion of Linux software RAID, RAID in general, and how they relate to file system data integrity. This answers my questions about how RAID responds to bad bits, as opposed to bad disks. He describes the workings of modern hard drives, how they verify the integrity of a read, and how Linux software RAID responds to a bad read. He also discusses
20:52:48  <prettyrobots> undetectable errors that lead to errors that RAID can detect, and that RAID 6 could repair, but says that no such repair is performed.
20:52:57  * tomerdjoined
20:53:50  <dominictarr>hmm, right
20:54:14  <dominictarr>but the question here is not about whether the some data maybe lost,
20:54:43  <dominictarr>but if the system says it's there, then it definately is there
20:55:04  <dominictarr>if it crashes, it may have successfully written
20:55:11  <dominictarr>but maybe not
20:57:09  * tomerdquit (Ping timeout: 248 seconds)
21:25:12  * tomerdjoined
21:34:29  * wolfeidaujoined
21:50:53  <prettyrobots>Long form stuff: https://github.com/bigeasy/strata/blob/master/diary.md#quick-split-and-merge-log-then-rewrite
21:51:41  * wolfeidauquit (Remote host closed the connection)
22:32:18  <dominictarr>substack: npmd can now install
22:32:33  <dominictarr>with no arguments, uses package.json
22:32:45  <dominictarr>todo: compiling
23:03:08  * tomerdquit (Remote host closed the connection)
23:03:40  * tomerdjoined
23:08:02  * tomerdquit (Ping timeout: 256 seconds)
23:08:12  * st_lukejoined
23:09:15  * tomerdjoined
23:13:59  * julianduquejoined
23:15:33  * jcrugzzjoined
23:19:31  * mikealjoined
23:33:58  * dominictarrquit (Quit: dominictarr)
23:55:16  * thlorenzjoined