RUST-396 Parse responses with command errors into Errors in run_command #174
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.
RUST-396
This PR updates
run_command
to parse command errors from server responses and return them asError
rather than as part of the command response.e.g.
Without this logic, it can be easy to ignore errors unintentionally, as is seen in the test fix included in this PR.
For completeness, I redid my survey of the other drivers, and there does not appear to be a consensus on this behavior:
So tallying that up, it seems 2 drivers do no validation, 2 do it optionally, and the rest validate.
I think that if we wanted to preserve the no-validation behavior, adding it as an option to
run_command
that is off by default would be reasonable.