Commit Graph

258 Commits

Author SHA1 Message Date
Steve Dee
fd3c03fa73 Options cleanup
Remove sow, pas, and rez. Add comments with flags and short
descriptions. Also correctly bound ports.
2014-03-31 07:46:54 -07:00
Steve Dee
90665f29ed Skip event on replay, not disk read 2014-03-28 12:00:30 -07:00
~hatteb-mitlyd
f6c4224130 don't crash when server cannot be found 2014-03-28 11:43:35 -07:00
Steve Dee
b7c6df667c Add flag to skip the last event
Handy when that event causes disastrous repercussions at the C level.
On the whole, terrible. Note that the flag is spelled "-Xwtf",
pronounced "pleaXe wipe that fscker".
2014-03-28 11:38:23 -07:00
C. Guy Yarvin
5a1e02fb48 Fix issue #128. 2014-03-27 09:42:27 -07:00
~hatteb-mitlyd
d4cf1aabed ignore ~files too. hokey unix stuff. 2014-03-25 10:39:53 -07:00
~hatteb-mitlyd
6151a2ba5d ignore ENOENT in unix_load 2014-03-25 10:26:46 -07:00
Steven Dee
5c68bb4de6 fpurge stopped working on Arch at some point 2014-03-25 08:43:52 -07:00
Steve Dee
d9a27c0949 Found our 28 bytes 2014-03-25 08:05:46 -07:00
~hatteb-mitlyd
38c04a68e6 fix headers leak 2014-03-24 19:42:01 -07:00
~hatteb-mitlyd
d5c61a3038 use a uv_prepare callback to scan fs tree
Much more responsive file sync.
2014-03-24 11:31:03 -07:00
C. Guy Yarvin
f725293d6d Revert "Fork a child to handle checkpointing."
This reverts commit 3fa73e4e350878c8dcf4c0a2f305f7a528c4a2c3.
2014-03-22 13:25:47 -07:00
~hatteb-mitlyd
23aced9775 Fork a child to handle checkpointing.
Kill the noise, and handle exit status from the child. If anything
untoward happens to the child, we need to know about it.
2014-03-21 18:08:58 -07:00
C. Guy Yarvin
c837404578 A bunch of web fixes. Preparing to proxy. 2014-03-21 14:46:14 -07:00
C. Guy Yarvin
55c9f41b14 Merge branch 'master' of github.com:urbit/urbit 2014-03-19 15:42:12 -07:00
C. Guy Yarvin
56a61c1c7f Add a pseudo-secure http server. 2014-03-19 15:40:40 -07:00
~hatteb-mitlyd
45c092d14f load some certificates so linux doesn't barf 2014-03-19 11:59:33 -07:00
~hatteb-mitlyd
1e57cf3e1e kill the noise 2014-03-18 17:46:41 -07:00
~hatteb-mitlyd
c944ff7496 close the SSL connection after the response is seen 2014-03-18 17:32:13 -07:00
~hatteb-mitlyd
e7a75fed3c separate out needs-handshake from SSL-is-open status
no longer responds to "no request"
2014-03-18 17:29:52 -07:00
~hatteb-mitlyd
b5e38673fc a few ssl improvements 2014-03-18 17:29:51 -07:00
~hatteb-mitlyd
f3e99bae8f connect SSL on port 443, not 80, and don't over-rout.
this nearly works.
2014-03-18 17:29:51 -07:00
~hatteb-mitlyd
4370e1ecc0 closer, no longer loops infinitely 2014-03-18 17:29:51 -07:00
~hatteb-mitlyd
1abfee3d03 works a little better, but is shoving SSL data into the parser 2014-03-18 17:29:51 -07:00
~hatteb-mitlyd
6f2e5cf333 actually completes the handshake now 2014-03-18 17:29:51 -07:00
~hatteb-mitlyd
65aba238a8 first-line work on SSLifying the HTTP client
doesn't work at all, because the encrypted buffer never gets written to the net
2014-03-18 17:29:51 -07:00
~hatteb-mitlyd
0d0d6e468a formatting 2014-03-18 17:29:51 -07:00
~hatteb-mitlyd
12bf369663 continue for files only 2014-03-18 17:04:44 -07:00
~hatteb-mitlyd
8ae8be35c2 ignore files without a dot in the name, to avoid disastrous consequences 2014-03-18 16:26:58 -07:00
Steve Dee
8703249546 Ignore revo from prior terms 2014-03-14 11:02:46 -07:00
Steve Dee
607c83d683 Various fixes and cleanups 2014-03-14 11:02:45 -07:00
Steve Dee
ba71f7ca11 Trailing whitespace cleanup, C level 2014-03-14 10:50:12 -07:00
Steve Dee
0f64d9b859 Fix _http_bods_free 2014-03-13 11:29:14 -07:00
Steve Dee
2d1cab488c Fix leak in u2_raft_work 2014-03-13 11:26:27 -07:00
Steve Dee
079c4f7696 Remove useless assert... 2014-03-12 11:54:14 -07:00
Steve Dee
b71e6f161d Remove old fprintf 2014-03-12 11:52:11 -07:00
Steve Dee
27ec17b711 TODOs 2014-03-12 11:35:30 -07:00
Steve Dee
c56cfccc7d Bail instead of exit 2014-03-12 11:35:30 -07:00
Steve Dee
e787049b65 Clean up timer logic 2014-03-12 11:35:29 -07:00
Steve Dee
1627b6e78c More intelligently load from sist 2014-03-12 11:35:26 -07:00
~hatteb-mitlyd
cff116fa0c don't leak 2014-03-11 14:20:27 -07:00
~hatteb-mitlyd
6e00220193 avoid responding to a dead http req 2014-03-11 14:11:03 -07:00
Steve Dee
afa1c641e9 Start ent_w at 1
Also, increment our sequence numbers if we have to.
2014-03-11 07:46:32 -07:00
Steve Dee
399530d379 Use same election timeout always
In particular, we wait at least 150ms after starting up before declaring
an election, to give the old leader a chance to send us a heartbeat.
2014-03-10 16:25:48 -07:00
Steven Dee
6466a1760a Fix on linux, remove a debug printf 2014-03-10 23:18:58 +00:00
Steve Dee
f4f1c711d5 New event log format including term and type 2014-03-10 16:14:21 -07:00
Steve Dee
6a3a939c4a Fix for duplicate vote responses 2014-03-10 12:18:18 -07:00
Steve Dee
970c6d431f Fixes for dir syncing in raft leader mode 2014-03-10 12:10:17 -07:00
Steve Dee
ad70fa2380 Check for null vog_c 2014-03-10 11:52:49 -07:00
Steve Dee
a5b23546a6 Bump votes on restore 2014-03-07 19:25:03 -08:00
Steve Dee
139c46dd63 Fix revo logic 2014-03-07 19:16:08 -08:00
Steve Dee
be218d4f8a More aggressive reconnecting 2014-03-07 19:12:27 -08:00
Steve Dee
c5bb5bb5e7 Moronic key-value store
This is kind of dumb, but we need to persist stuff for Raft, and
we can't touch noun state from followers.
2014-03-07 19:12:27 -08:00
Steve Dee
8aa97708f4 Fix a stupid in c3_log_every 2014-03-07 19:12:21 -08:00
Steve Dee
1786c0a048 Cleanup 2014-03-07 16:47:30 -08:00
Steve Dee
7371ba09fc Fix a segfault on startup :( 2014-03-07 16:46:46 -08:00
Steve Dee
551f28b594 Log on bump to candidate 2014-03-07 16:26:15 -08:00
Steve Dee
f92eaf970c Clean up Raft options and init
I opted to keep u2_opts to just numbers, strings, and beans for now and
parse them to peer names in the Raft init code.
2014-03-07 16:19:38 -08:00
Steve Dee
e7f6270864 Rejigger boot sequence
The calls to u2_raft_work were effectless since the log hasn't been
initialized by that point.
2014-03-07 13:45:31 -08:00
Steve Dee
e43b99af67 Log killed connections 2014-03-07 13:24:33 -08:00
Steve Dee
3cda85ddc1 Longer heartbeat log interval 2014-03-07 12:26:34 -08:00
Steve Dee
71e67e7e9b Fix long line 2014-03-07 12:17:08 -08:00
Steven Dee
8ef45612dd Unsigned format specifiers 2014-03-07 20:01:09 +00:00
Steve Dee
3383de7938 Comments 2014-03-07 20:01:04 +00:00
Steve Dee
1e10cd5d95 Clean up connections
The code seems much less racy now.
2014-03-07 20:00:44 +00:00
Steven Dee
22ca1dfdf0 Rejigger connection killing 2014-03-07 20:00:44 +00:00
Steven Dee
53fafd25fd update -> note, and call it 2014-03-07 20:00:44 +00:00
Steven Dee
7c7c044525 Add ron_u->liv
This prevents us from double-killing connections in races, e.g. the
one between _raft_rest_name and _raft_connect_cb.
2014-03-07 20:00:44 +00:00
Steven Dee
60e63dd869 s/raft/sist/ 2014-03-06 10:53:32 -08:00
Steven Dee
e5a11b5aa0 Minor fixes and cleanup 2014-03-06 10:18:36 -08:00
Steve Dee
27e45b8c48 Fewer TODOs 2014-03-06 08:59:21 -08:00
Steve Dee
cc345da3e4 Clean up and dedup message writing 2014-03-06 08:59:21 -08:00
Steve Dee
9e2f12fb80 Leader election appears to work 2014-03-06 08:59:20 -08:00
Steve Dee
2e0f7df85c Duplex connections 2014-03-06 08:59:20 -08:00
Steve Dee
66fedab1fe Raft message sending working 2014-03-06 08:59:20 -08:00
Steve Dee
1ea754ef88 Some TODOs 2014-03-06 08:59:20 -08:00
Steve Dee
008558a1f7 WIP hand-rolled parsing, read side 2014-03-06 08:59:20 -08:00
Steve Dee
85c3cf4f5e Use uv_ip4_addr 2014-03-06 08:59:20 -08:00
Steve Dee
cc096a99af Comment log lines 2014-03-06 08:59:20 -08:00
Steve Dee
f17f0add72 More sanity checking and cleanup 2014-03-06 08:59:20 -08:00
Steve Dee
af91e4a2c1 WIP more work 2014-03-06 08:59:20 -08:00
Steve Dee
d045f31f23 Rejigger the event loop again 2014-03-06 08:59:20 -08:00
Steve Dee
3f7e6d5e94 More work 2014-03-06 08:59:20 -08:00
Steve Dee
abc5d4fb0d More work 2014-03-06 08:59:19 -08:00
Steve Dee
5507162089 Comments 2014-03-06 08:59:19 -08:00
Steve Dee
424af0354d WIP Raft network base 2014-03-06 08:59:19 -08:00
Gavin Whelan
c85fd1fe35 Fixed Linux specific bug causing lack of stack overflow traces. 2014-03-04 14:48:59 -08:00
C. Guy Yarvin
3b98f316a0 Various fixes and improvements. 2014-03-04 11:17:34 -08:00
C. Guy Yarvin
dd4a42b345 Some HTTP client fixes. 2014-03-03 11:51:35 -08:00
C. Guy Yarvin
3400b6bacb Working HTTP client. 2014-03-02 14:31:03 -08:00
C. Guy Yarvin
16dd948e7d Attempted fix to an intermittent sync event bug. 2014-02-27 10:33:20 -08:00
C. Guy Yarvin
a7055224fa Various HTTP client fixes. 2014-02-26 17:58:40 -08:00
C. Guy Yarvin
af81e7c7b4 Trivial test cahnge. 2014-02-26 16:42:43 -08:00
C. Guy Yarvin
54ed2bdcb0 More C files. 2014-02-26 16:40:53 -08:00
C. Guy Yarvin
cc255a4c49 New cttp file. 2014-02-26 16:39:48 -08:00
Steve Dee
edc28b9ba7 Get new event loop working with checkpoints
Modifying u2_reck is a bad idea in the face of checkpoints. Just stick
everything on roe. This actually cleans up the logic a bit -- we can
execute non-core-modifying actions immediately, rather than on the next
tick.
2014-02-25 12:18:18 -08:00
Steve Dee
d7e4c46150 Revert "Revert "Merge remote-tracking branch 'urbit/master' into master""
This reverts commit dc6f72fa0a8ff2097b1e9c900ebec444c0d4c24f.
2014-02-25 12:18:07 -08:00
Steve Dee
de5048e895 Revert "Merge remote-tracking branch 'urbit/master' into master"
This reverts commit d52d2835b96f89e7ebbe5392c99f1483d165ee0b, reversing
changes made to 58838ea246e52c064719edc56e29b6a1ba713fdf.

Conflicts:
	Makefile
2014-02-24 11:27:57 -08:00
Steve Dee
9b992ae438 Merge remote-tracking branch 'urbit/master' into master
Conflicts:
	v/loop.c
2014-02-24 10:45:10 -08:00
Steve Dee
d83f057881 bail instead of exit from boot
Fixes terminal state not being reset on boot error. We pre-initialize
pig to prevent warnings since gcc doesn't understand that u2_lo_bail
exits.
2014-02-24 10:40:52 -08:00