These 52 commits are when the Protocol Buffers files have changed:
Commit: | e87e84e | |
---|---|---|
Author: | Mark Allen |
WIP
Commit: | a3fc1c3 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Add namespace info to wedge_status API call; add namespace enforcement @ machi_flu1_net_server
The documentation is generated from this commit.
Commit: | c654245 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Use 'bool' type in PB spec where feasible
Commit: | e24acb7 | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
Clean up internal protocol<->tuple mappings for correct epoch checking
Commit: | 5a65a16 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Remove straggler CoC items in code
Commit: | 6089ee6 | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
read_chunk API refactoring; all tests pass; todo tasks remain
Commit: | 0a8c415 | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
trim_chunk API refactoring; all tests pass; todo tasks remain
Commit: | 3d730ea | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
write_chunk API refactoring; all tests pass; todo tasks remain
Commit: | 2932a17 | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
append_chunk API refactoring; all tests pass; todo tasks remain
Commit: | c49ccaf | |
---|---|---|
Author: | Scott Lystig Fritchie |
Merge slf/flu-config-rcd-style
Commit: | 5aeaf87 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: machi_chain_manager1:set_chain_members() API change, all tests pass, yay
Commit: | 10a27ce | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
All eunit tests now passing again
Commit: | 611f33e | |
---|---|---|
Author: | Scott Lystig Fritchie |
Change trigger_gc default -> 0
Commit: | f735842 | |
---|---|---|
Author: | UENISHI Kota | |
Committer: | UENISHI Kota |
Trim command and GC prototype implementation * maybe_gc/2 is triggered at machi_file_proxy, when chunk is deleted and the file is larger than `max_file_size` * A file is deleted if all chunks except 1024 bytes header are trimmed * If a file is going to be deleted, file_proxy notifies metadata_mgr to remember the filename persistently, whose filename is `known_files_<FluName>` * Such trimmed filenames are stored in a machi_plist file per flu * machi_file_proxy could not be started if the filename is in the manager's list. Consequently, any write, read and trim operations cannot happen against deleted file. * After the file was trimmed, any read request to the file returns `{error, trimmed}` * Disclaimer: no tests written yet and machi_plist does not support any recovery from partial writes. * Add some thoughts as comments for repairing trims. * State diagram of every byte is as follows: ``` state\action| write/append | read_chunk | trim_chunk ------------+----------------+------------------+--------------- unwritten | -> written | fail (+repair) | -> trimmed written | noop or repair | return content | -> trimmed trimmed | fail | fail | noop ```
Commit: | 0f688d6 | |
---|---|---|
Author: | UENISHI Kota | |
Committer: | UENISHI Kota |
Update read_chunk() PB protocol to return trimmed chunks
Commit: | 3e975f5 | |
---|---|---|
Author: | UENISHI Kota | |
Committer: | UENISHI Kota |
Allow read_chunk() to return partial chunks This is simply a change of read_chunk() protocol, where a response of read_chunk() becomes list of written bytes along with checksum. All related code including repair is changed as such. This is to pass all tests and not actually supporting partial chunks.
Commit: | 1b612bd | |
---|---|---|
Author: | UENISHI Kota |
Fix typo in comment
Commit: | dfe953b | |
---|---|---|
Author: | UENISHI Kota | |
Committer: | UENISHI Kota |
Add surface of trim to scrub
Commit: | 952d2fa | |
---|---|---|
Author: | Scott Lystig Fritchie |
Change flag_checksum -> flag_no_checksum for consistency
Commit: | 81cb103 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: broken
Commit: | 679f54f | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
Implement disable read repair
Commit: | 91496c6 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Oops, fix PB stuff to add witnesses
Commit: | 2b64028 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Add kick_projection_reaction, implement yo:tell_author_yo()
Commit: | 1e14fe8 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Ha, oops! Add bad_epoch code, derp 1
Commit: | 3d2b49b | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: refactoring & edoc'ing
Commit: | 7aff9fc | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: giant hairball 12
Commit: | 64817dd | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: giant hairball 01
Commit: | f45dc78 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: hairball, but: Failed: 6. Skipped: 0. Passed: 13
Commit: | 93f64a2 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: hairball, but flu_smoke_test() works!
Commit: | 77b4da1 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: giant hairball 5
Commit: | 0e32fd2 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: giant hairball 3
Commit: | 6d95d86 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: giant hairball, bleh, low-level checksum_list() barely working
Commit: | 90efc41 | |
---|---|---|
Author: | Scott Lystig Fritchie |
machi.proto definition for low-level protocol ops
Commit: | 2763b16 | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
timing_pb_encoding_test_... speed factor=35.95 [2.730 s] ok So, the PB style encoding of the Mpb_LL_WriteProjectionReq message is about 35-36 times slower than using Erlang's term_to_binary() and binary_to_term(). {sigh}
Commit: | 5d8b648 | |
---|---|---|
Author: | Scott Lystig Fritchie |
All projection store protocol operations are now using Protocol Buffers! So, there's some cheating going on, because some of the parts of the #projection_v1{} and #p_srvr{} records aren't fully specified. Those parts are being specified as "opaque" in the field names, e.g. optional bytes opaque_flap = 10; optional bytes opaque_inner = 11; required bytes opaque_dbg = 12; required bytes opaque_dbg2 = 13; The serialization that's being used is erlang term sexprs. That isn't portable. So if/when we really need to deal with a non-Erlang language, we'll have to straighten this out further.
Commit: | 841235b | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: bugfixes, add {error, written}
Commit: | 4fc0578 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: bugfixes, machi_flu1_test still broken
Commit: | d9407b7 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: dinnertime, machi_flu1_test still broken
Commit: | 31c5bcc | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: 1/2 of low-level projection proto finished, machi_flu1_test fails
Commit: | 725b10b | |
---|---|---|
Author: | Scott Lystig Fritchie |
Complete PB round-trip for #projection_v1{}, bleh
Commit: | 2068f70 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: encoding #p_srvr and #projection_v1, just starting. Damn tedious.
Commit: | 73f71c4 | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: list_files end-to-end!
Commit: | 6722b3c | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: checksum_list incomplete implementation....
Commit: | 44c22bf | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: read_chunk #1
Commit: | a8782ee | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: write_chunk #1
Commit: | 5ef499e | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: append_chunk #1
Commit: | 1372bd9 | |
---|---|---|
Author: | Scott Lystig Fritchie | |
Committer: | Scott Lystig Fritchie |
{sigh} add filter-dialyzer-dep-warnings
Commit: | 40c0a72 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Add test/machi_pb_test.erl, finish PB refactoring
Commit: | a82bd68 | |
---|---|---|
Author: | Scott Lystig Fritchie |
Overhaul the 0.1 PB definition. Again. Many thanks to @seancribbs for a suggestion to avoid the PB design mistake/feature of the original Riak KV PB API.
Commit: | 87b636a | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: PB wrestling
Commit: | 37a8c1c | |
---|---|---|
Author: | Scott Lystig Fritchie |
WIP: PB wrestling
Commit: | e5673b5 | |
---|---|---|
Author: | Scott Lystig Fritchie |
First attempt at Protocol Buffers .proto + infrastructure