Commit 9cd3cab
committed
[nexus] stop echoing the underlay member list from group updates
Tag and source updates read the underlay group and had written the read
member list straight back. `multicast_group_update_underlay` is a
full-list replace whose only concurrency control is the per-group tag,
so that echo-write could silently revert a member add or remove that
landed between the read and the write.
`update_groups` now reads the underlay group only to obtain the tag
authorizing the external update, creating the group (memberless) when
absent, and never writing the underlay member list. The member add and
remove paths remain the list's only writers. This also removes an
underlay write the planned member-writer transition would otherwise
have to delete.1 parent 232fe89 commit 9cd3cab
1 file changed
Lines changed: 24 additions & 42 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
532 | 532 | | |
533 | 533 | | |
534 | 534 | | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
535 | 538 | | |
536 | 539 | | |
537 | 540 | | |
| |||
608 | 611 | | |
609 | 612 | | |
610 | 613 | | |
611 | | - | |
612 | | - | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
613 | 624 | | |
614 | 625 | | |
615 | 626 | | |
616 | | - | |
617 | | - | |
618 | | - | |
619 | | - | |
| 627 | + | |
620 | 628 | | |
621 | 629 | | |
622 | 630 | | |
| |||
631 | 639 | | |
632 | 640 | | |
633 | 641 | | |
634 | | - | |
635 | | - | |
636 | | - | |
637 | | - | |
638 | | - | |
639 | | - | |
640 | | - | |
641 | | - | |
642 | | - | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
643 | 649 | | |
644 | 650 | | |
645 | 651 | | |
| |||
655 | 661 | | |
656 | 662 | | |
657 | 663 | | |
658 | | - | |
659 | | - | |
660 | | - | |
661 | | - | |
| 664 | + | |
662 | 665 | | |
663 | | - | |
| 666 | + | |
664 | 667 | | |
665 | 668 | | |
666 | 669 | | |
667 | 670 | | |
668 | | - | |
669 | | - | |
670 | | - | |
671 | | - | |
672 | | - | |
673 | | - | |
674 | | - | |
675 | | - | |
676 | | - | |
677 | | - | |
678 | | - | |
679 | | - | |
680 | | - | |
681 | | - | |
682 | | - | |
683 | | - | |
684 | | - | |
685 | 671 | | |
686 | 672 | | |
687 | 673 | | |
| |||
717 | 703 | | |
718 | 704 | | |
719 | 705 | | |
720 | | - | |
721 | | - | |
722 | | - | |
723 | | - | |
724 | | - | |
| 706 | + | |
725 | 707 | | |
726 | 708 | | |
727 | 709 | | |
| |||
0 commit comments