syndicate-rs/syndicate/src
Tony Garnock-Jones 2b296d79c7 Repair error in dataspace assertion idempotency.
If a facet, during X, asserts X, for all X, then X includes all
`Observe` assertions. Assertion of X should be a no-op (though
subsequent retractions of X will have no effect!) since duplicates are
ignored. However, the implementation had been ignoring whether it had
seen `Observe` assertions before, and was *always* (re)placing them
into the index, leading to runaway growth.

The repair is to only process `Observe` records on first assertion and
last retraction.

As part of this change, Dataspaces have been given names, and some
cruft from the previous implementation has been removed.
2022-01-15 23:18:29 +01:00
..
actor.rs Avoid racy approaches to actor-termination. 2022-01-10 12:52:29 +01:00
bag.rs Some documentation; rename Debtor to Account 2021-08-13 15:51:11 -04:00
dataflow.rs Intra-actor dataflow and fields; `enclose!` macro 2021-09-23 21:43:32 +02:00
dataspace.rs Repair error in dataspace assertion idempotency. 2022-01-15 23:18:29 +01:00
during.rs stop() and stop_facet(facet_id) now return unit 2021-10-07 16:59:34 +02:00
error.rs No more distinction between internal/external protocol variants 2021-09-24 13:04:15 +02:00
lib.rs Intra-actor dataflow and fields; `enclose!` macro 2021-09-23 21:43:32 +02:00
pattern.rs Accommodate changes to dataspacePatterns 2021-12-13 15:43:24 +01:00
relay.rs It is OK for an assertion to be placed at an unregistered remote_oid, it turns out 2021-12-01 11:14:02 +01:00
rewrite.rs Fix length checks 2021-12-13 16:05:43 +01:00
skeleton.rs Repair error in dataspace assertion idempotency. 2022-01-15 23:18:29 +01:00
sturdy.rs Adapt to new Preserves major version; stub daemon basis 2021-09-19 16:53:37 +02:00
supervise.rs Belt and suspenders 2022-01-09 21:01:55 +01:00
tracer.rs Put thread IDs in logging output 2022-01-10 12:52:12 +01:00