Repository navigation
test(storage): the spool changes nothing when it is read (MR-STOR-0145) - #1077
Merged
Merged
Conversation
MR-STOR-0145 (storage §8): a node never marks, hides, expires or removes a spool envelope after it is written, and serves a spool only from a position. It was Partial with no test. The spool's tests showed it keeps every envelope, deduplicates nothing and opens nothing, but each read a spool once from position 0. A node that marked or removed what a device had read, or served from anywhere but the position asked, passed them all. Two tests on the spool's router, on Postgres: - a_spool_reads_the_same_from_any_position_however_often_it_is_read: 67 envelopes, more than one page. They are read whole in two pages, in the order sent, with positions rising. The first page, read again, is unchanged. A read from a middle position is exactly the rest, and a read after the last holds nothing. - a_device_acknowledging_what_it_read_changes_nothing: the acknowledge, status and unpositioned-read requests #976 removed are not served, and the spool reads the same after them. Mutation controls, each restored: - spool_list_from_seq deleting what it returns: both red, the re-read is empty; - the retrieve route reading from position 0 whatever it is asked: the first red, the second page repeats the first; - the acknowledge route served again: the second red. MR-STOR-0145 is Met (§8), with finding §6.46, a verification matrix row, and §7's storage row at Met 44, Partial 33. Release, on Postgres: the spool's 8 tests pass, and the node's lib suite 38/0. cargo fmt --check and clippy --all-targets -D warnings are clean. ci/conformance_evidence.py passes.
…ads-change-nothing # Conflicts: # specs/requirements/CONFORMANCE_GAPS.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
MR-STOR-0145 (storage §8): a node never marks, hides, expires or removes a spool envelope after it is written, and serves a spool only from a position. It was Partial with no test; this adds the tests, and MR-STOR-0145 is now Met.
The gap
The spool's existing tests show it keeps every envelope, deduplicates nothing and opens nothing. But each one read a spool once, from position 0. A node that marked or removed what a device had read, or served from anywhere but the position asked, passed them all.
Two tests, on the spool's router, on Postgres
a_spool_reads_the_same_from_any_position_however_often_it_is_read: 67 envelopes, more than one page.a_device_acknowledging_what_it_read_changes_nothing: the acknowledge, status and unpositioned-read requests feat(beta): skeletons for beta conformance (does not compile yet) #976 removed are not served, and the spool reads the same after them.Mutation controls (each restored)
spool_list_from_seqdeletes what it returnsRecords
Evidence
cargo fmt --checkandclippy --all-targets -D warningsare clean.ci/conformance_evidence.pypasses.Merge order