Scott Lystig Fritchie
42fb6dd002
WIP: it's clear that the legacy state transition check is broken, II
2015-07-03 23:37:36 +09:00
Scott Lystig Fritchie
caeb322725
WIP: it's clear that the legacy state transition check is broken
2015-07-03 23:17:34 +09:00
Scott Lystig Fritchie
83015c319d
WIP: yeah, now we're going places
2015-07-03 22:05:35 +09:00
Scott Lystig Fritchie
6a706cbfeb
WIP: Refactoring and prototyping goop, broken test
2015-07-03 19:21:41 +09:00
Scott Lystig Fritchie
a658a64482
Cosmetic formatting change
2015-07-01 15:37:53 +09:00
Scott Lystig Fritchie
22337e1819
Remove short circuit (bad idea!) from react_to_env_C100()
2015-06-15 17:22:02 +09:00
Scott Lystig Fritchie
b244a3b8e4
Reduce verbosity, try fix up convergence demo for chain len=4
2015-06-15 12:41:16 +09:00
Scott Lystig Fritchie
9bf76e0bfb
Fix for correctness bug, thanks PULSE
2015-06-05 01:06:39 +09:00
Scott Lystig Fritchie
be62300b3b
Bug fixes: model and real bugs, thanks PULSE and converge_demo both!
2015-06-04 17:39:29 +09:00
Scott Lystig Fritchie
0cf9627f26
Bugfix, found by inspection, yay!
2015-06-04 15:05:37 +09:00
Scott Lystig Fritchie
89b8b6a012
Bugfix, found by PULSE, yay!
2015-06-04 14:31:58 +09:00
Scott Lystig Fritchie
d3df2bd31d
WIP: remove repair_always_done option, it was flawed
2015-06-03 15:26:22 +09:00
Scott Lystig Fritchie
87417d2872
WIP: get the old jalopy into runnable shape
2015-06-03 11:48:55 +09:00
Scott Lystig Fritchie
2207151eba
Fix projection_transition_is_sane() bug
2015-06-02 21:20:50 +09:00
Scott Lystig Fritchie
deabe14d29
Un-proplist-ify the inner projection
2015-06-02 20:55:18 +09:00
Scott Lystig Fritchie
207be8729b
Un-proplist-ify the flapping_i info
2015-06-02 20:32:52 +09:00
Scott Lystig Fritchie
000d687588
Fix creation_time bug in inner projection
2015-06-02 16:26:49 +09:00
Scott Lystig Fritchie
69244691f4
Such wonder when one *reads* the docs...
2015-05-20 14:12:48 +09:00
Scott Lystig Fritchie
a4266e8aa4
Fix known chain repair bugs, add basic smoke test
2015-05-19 19:32:48 +09:00
Scott Lystig Fritchie
a347722a15
Fix {error,not_written} type bugs in chmgr
2015-05-18 17:32:22 +09:00
Scott Lystig Fritchie
d293170e92
WIP: starting machi_cr_client.erl
2015-05-17 23:48:05 +09:00
Scott Lystig Fritchie
10364834de
Add a dummy client-side implementation module:machi_yessir_client.erl
2015-05-17 19:00:51 +09:00
Scott Lystig Fritchie
5c2635346f
Basic multi-party chain repair for ap_mode finished
2015-05-16 17:39:58 +09:00
Scott Lystig Fritchie
a9c753ad64
WIP: more generic all-way file chunk merge func
2015-05-15 17:15:02 +09:00
Scott Lystig Fritchie
eec029b08f
WIP: aside, fix FLU wedge status @ init()
2015-05-13 17:59:32 +09:00
Scott Lystig Fritchie
4ae0f94649
WIP: move to stats via ETS, success/failure propagates, yay!
2015-05-12 23:45:35 +09:00
Scott Lystig Fritchie
cad84442bb
WIP: stats record, hrm
2015-05-12 22:42:03 +09:00
Scott Lystig Fritchie
8807f954ff
WIP: Whole file repair is 95% complete, yay!
2015-05-12 21:45:40 +09:00
Scott Lystig Fritchie
f48720e4dc
WIP: set up proxies for repair
2015-05-12 12:56:41 +09:00
Scott Lystig Fritchie
1c70a46b09
Add basic process & bookkeeping structure for repair proc
...
=INFO REPORT==== 11-May-2015::19:50:09 ===
Chain tail a of [a] starting repair of [c]
=INFO REPORT==== 11-May-2015::19:50:12 ===
Chain tail a of [a]: repair finished in 2.438 seconds: todo_yo
2015-05-11 19:50:21 +09:00
Scott Lystig Fritchie
c82000dc30
Reduce spamminess slightly
2015-05-11 19:00:21 +09:00
Scott Lystig Fritchie
33bfbe109e
Chain manager bug fixes & enhancment (more...)
...
* Set max length of a chain at -define(MAX_CHAIN_LENGTH, 64).
* Perturb tick sleep time of each manager
* If a chain manager L has zero members in its chain, and then its local
public projection store (authored by some remote author R) has a projection
that contains L, then adopt R's projection and start humming consensus.
* Handle "cross-talk" across projection stores, when chain membership
is changed administratively, e.g. chain was [a,b,c] then changed to merely
[a], but that change only happens on a. Servers b & c continue to use
stale projections and scribble their projection suggestions to a, causing
it to flap.
What's really cool about the flapping handling is that it *works*. I
wasn't thinking about this scenario when designing the flapping logic, but
it's really nifty that this extra scenario causes a to flap and then a's
inner projection remains stable, yay!
* Add complaints when "cross-talk" is observed.
* Fix flapping sleep time throttle.
* Fix bug in the machi_projection_store.erl's bookkeeping of the
max epoch number when flapping.
2015-05-11 18:41:45 +09:00
Scott Lystig Fritchie
7906e6c235
WIP: basic wedge notifications now working
2015-05-08 18:17:41 +09:00
Scott Lystig Fritchie
762aef557f
WIP: Set the stage for FLU wedging API
2015-05-08 15:36:53 +09:00
Scott Lystig Fritchie
ae1d038abe
Change default value of chmgr's use_partition_simulator to false
2015-05-08 13:40:44 +09:00
Scott Lystig Fritchie
238c8472cd
WIP: timeout comments
2015-05-07 18:52:01 +09:00
Scott Lystig Fritchie
14fc37bd0d
Add ability to start FLUs at application startup
2015-05-07 18:39:39 +09:00
Scott Lystig Fritchie
517941aaaa
Finish chain manager restart & membership changing
2015-05-07 17:52:16 +09:00
Scott Lystig Fritchie
aeb2e4ef9e
WIP: partial refactoring of chmgr 2nd start code, one test broken
2015-05-06 11:41:04 +09:00
Scott Lystig Fritchie
a7bd8e43d3
Clean up machi_flu_psup_test.erl
2015-05-02 17:10:23 +09:00
Scott Lystig Fritchie
1675020150
WIP, tests pass again, includign the newest one
2015-05-02 00:33:49 +09:00
Scott Lystig Fritchie
53f6a753f4
WIP: tests pass, but not finished yet
2015-05-01 14:51:42 +09:00
Scott Lystig Fritchie
7bafc1c28a
WIP: stop for the night, we are broken
2015-04-30 23:16:08 +09:00
Scott Lystig Fritchie
442e79e4f1
Add machi_flu_psup.erl to supervise all 3 FLU processes (see below)
...
Introduce machi_flu_psup:start_flu_package/4 as a way to start all
related FLU processes
* The projection store
* The chain manager
* The FLU itself
... as well as linked processes.
http://www.snookles.com/scotttmp/flu-tree-20150430.png shows one FLU
running, "a". The process registered "a" is the append server,
"some-prefix" for the sequencer & writer for the current <<"some-prefix">>
file, and a process each for 3 active TCP connections to that FLU.
2015-04-30 19:15:27 +09:00
Scott Lystig Fritchie
02bc7fe0bc
WIP: Fix bug that flaps inside an inner projection, oops!
2015-04-14 18:23:00 +09:00
Scott Lystig Fritchie
90df655256
WIP: Ha! There's a bug, this verbose logging change made it easier to see
2015-04-14 16:38:19 +09:00
Scott Lystig Fritchie
9e587b3d11
WIP: crufty TODO & comment cleanup
2015-04-14 16:17:49 +09:00
Scott Lystig Fritchie
59936eda62
WIP: By Jove, I believe the chain manager is working
2015-04-14 15:30:24 +09:00
Scott Lystig Fritchie
09051aecce
WIP: experiments for transitioning out of inner/nested projection state
2015-04-14 00:54:38 +09:00
Scott Lystig Fritchie
94298d90da
WIP: transitions into & out of inner proj nesting are problems, yo!
2015-04-10 22:41:22 +09:00