Fix the fix for the "out"-related bug from commit de1dc5a
.
The problem was that sometimes there'd be an assertion that `meta` had
asserted that *also* was asserted by some local process. Commit
de1dc5a
introduced code that would drop the assertion in this case;
this commit changes it to only remove assertions from the set when
*only* `meta` is asserting them.
This commit is contained in:
parent
6b31b33230
commit
5f6f3429c8
|
@ -74,9 +74,9 @@
|
|||
(values (for/list [(pid (tset->list affected-pids))]
|
||||
(cons pid (scn (biased-intersection new-routing-table (mux-interests-of new-m pid)))))
|
||||
(and (not (meta-label? label))
|
||||
(drop-scn (scn (trie-subtract (strip-interests new-routing-table)
|
||||
(mux-interests-of new-m 'meta)
|
||||
#:combiner (lambda (a b) #f)))))))
|
||||
(drop-scn (scn (trie-relabel new-routing-table
|
||||
(lambda (v)
|
||||
(empty-tset-guard (tset-remove v 'meta)))))))))
|
||||
|
||||
(define (compute-affected-pids routing-table cover)
|
||||
(trie-match-trie cover
|
||||
|
|
Loading…
Reference in New Issue