Skip to content

Conversation

@PVince81
Copy link
Member

When retrieving the conversation list for a user, there is a
time window between retrieving the list and the participant information.
If in that time window, a concurrent request removes the user from the
room, or even the room got deleted, this could cause a
ParticipantNotFoundException.

This fix prevents the latter exception to make the whole call return a
404. Instead, it skips the obsoleted entry and carries on with the list.

Similar race condition like with #5733.
Not reproducible though.

When retrieving the conversation list for a user, there is a
time window between retrieving the list and the participant information.
If in that time window, a concurrent request removes the user from the
room, or even the room got deleted, this could cause a
ParticipantNotFoundException.

This fix prevents the latter exception to make the whole call return a
404. Instead, it skips the obsoleted entry and carries on with the list.

Signed-off-by: Vincent Petry <[email protected]>
@PVince81 PVince81 added this to the 💖 Next Major (22) milestone Jun 11, 2021
@PVince81 PVince81 requested a review from nickvergessen June 11, 2021 15:54
@PVince81 PVince81 self-assigned this Jun 11, 2021
@PVince81 PVince81 changed the title Ignore current participant if removed concurrently Ignore current participant when listing rooms if removed concurrently Jun 11, 2021
@PVince81
Copy link
Member Author

/backport to stable21.1

@nickvergessen nickvergessen merged commit 18c499f into master Jun 14, 2021
@nickvergessen nickvergessen deleted the bugfix/noid/ignore-removed-participant-when-listing branch June 14, 2021 08:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants