rafal/fix-slow-multistream-delete #2332
Closed
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.
We have a problem with PATCH/DELETE multistream target. The issue is that when user has a lot of streams, then this becomes a very DB-heavy request.
The proposed workaround is to skip notifying Catalyst about the multistream update in case of not passing by the user a helper
streamId
orplaybackId
as query param. So it will work right now this way:streamId
orplaybackId
in the query params, then it will work as before.DELETE /api/multistream/target/fabb8085-5d71-4807-919e-abd7410f051b
DELETE /api/multistream/target/fabb8085-5d71-4807-919e-abd7410f051b?streamId=abcdef
The root cause is our studio DB architecture and the design decision that 1 multistream can be related to multiple streams. This with comparison with storing everything as JSON and multiple target in a single stream creates the issue: we can only use GIN index, which happens to be too slow with the number of streams users have.