serviceability: allow pending users to subscribe to multicast groups#3521
Merged
serviceability: allow pending users to subscribe to multicast groups#3521
Conversation
bgm-malbeclabs
approved these changes
Apr 10, 2026
karl-dz
approved these changes
Apr 10, 2026
the SubscribeMulticastGroup instruction rejected Pending users, but CreateSubscribeUser only takes one mgroup account. this meant callers could create a user and subscribe to the first group, but subsequent SubscribeMulticastGroup calls for additional groups failed with InvalidStatus (0x7) because the user was still Pending. the inner subscribe_user_to_multicastgroup function already handles Pending users fine (CreateSubscribeUser proves this every time it runs). the status gate only existed on the standalone instruction, creating an inconsistency. relax the check to also allow Pending status. also fixes a flaky TestE2E_UserBGPStatus disconnect step where pkill -9 can tear down the container before the exec session completes.
0e7768b to
a55506a
Compare
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.
Summary
SubscribeMulticastGroupfor users inPendingstatus so thatCreateSubscribeUser(which only takes one mgroup account) can be followed by additional subscribe calls before the activator runssubscribe_user_to_multicastgroupfunction already handles Pending users —CreateSubscribeUserproves this every time it runs. The standalone instruction had an extra status gate creating an inconsistency.Testing Verification
test_subscribe_pending_user_succeeds— creates a Pending user viaCreateSubscribeUser, then subscribes viaSubscribeMulticastGroupand verifies the user remains Pending with both publisher and subscriber lists populatedcreate_subscribe_user_testtests passmulticastgroup_subscribe_testtests pass