57 lines
2.3 KiB
Org Mode
57 lines
2.3 KiB
Org Mode
* To Do list
|
|
|
|
** DONE remove the escript* stuff from machi_util.erl
|
|
** DONE Add functions to manipulate 1-chain projections
|
|
|
|
- Add epoch ID = epoch number + checksum of projection!
|
|
Done via compare() func.
|
|
|
|
** DONE Change all protocol ops to add epoch ID
|
|
** DONE Add projection store to each FLU.
|
|
|
|
*** DONE What should the API look like? (borrow from chain mgr PoC?)
|
|
|
|
Yeah, I think that's pretty complete. Steal it now, worry later.
|
|
|
|
*** DONE Choose protocol & TCP port. Share with get/put? Separate?
|
|
|
|
Hrm, I like the idea of having a single TCP port to talk to any single
|
|
FLU.
|
|
|
|
To make the protocol "easy" to hack, how about using the same basic
|
|
method as append/write where there's a variable size blob. But we'll
|
|
format that blob as a term_to_binary(). Then dispatch to a single
|
|
func, and pattern match Erlang style in that func.
|
|
|
|
*** DONE Do it.
|
|
|
|
** DONE Finish OTP'izing the Chain Manager with FLU & proj store processes
|
|
** DONE Eliminate the timeout exception for the client: just {error,timeout} ret
|
|
** DONE Move prototype/chain-manager code to "top" of source tree
|
|
*** DONE Preserve current test code (leave as-is? tiny changes?)
|
|
*** DONE Make chain manager code flexible enough to run "real world" or "sim"
|
|
** DONE Add projection wedging logic to each FLU.
|
|
** DONE Implement real data repair, orchestrated by the chain manager
|
|
** DONE Change all protocol ops to enforce the epoch ID
|
|
|
|
- Add no-wedging state to make testing easier?
|
|
|
|
|
|
** DONE Adapt the projection-aware, CR-implementing client from demo-day
|
|
** DONE Add major comment sections to the CR-impl client
|
|
** TODO Simple basho_bench driver, put some unscientific chalk on the benchtop
|
|
** TODO Create parallel PULSE test for basic API plus chain manager repair
|
|
** TODO Add client-side vs. server-side checksum type, expand client API?
|
|
** TODO Add gproc and get rid of registered name rendezvous
|
|
*** TODO Fixes the atom table leak
|
|
*** TODO Fixes the problem of having active sequencer for the same prefix
|
|
on two FLUS in the same VM
|
|
|
|
** TODO Fix all known bugs/cruft with Chain Manager (list below)
|
|
*** DONE Fix known bugs
|
|
*** DONE Clean up crufty TODO comments and other obvious cruft
|
|
*** TODO Re-add verification step of stable epochs, including inner projections!
|
|
*** TODO Attempt to remove cruft items in flapping_i?
|
|
|
|
** TODO Move the FLU server to gen_server behavior?
|
|
|