Adding limit on how many times a crash command can run #2008
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.
Details
We currently store specific identifying values when a crash happens. That means that if a specific user call a command in Bedrock (e.g. userID 1) and that command crashes the node, we will store that userID and won't let the cluster execute that command for that user again.
The problem is that if the issue is in the command, and not on specific data related to that user, UserID 2 or UserID 3 could still call the same command and progressively crash all nodes in the cluster.
This change will block commands from being executed if the same command already crashed the cluster more than one time, independent of the specific crash identifying values.
Fixed Issues
Fixes https://github.com/Expensify/Expensify/issues/451831
Tests
need to work on tests.
Internal Testing Reminder: when changing bedrock, please compile auth against your new changes