Validate server types before rpc requests #5152
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.
This is a follow on to #5102
Before making requests such as getScans() or getCompactions() the server types for each server will be validated to make sure it is a valid type. The requests are multi-threaded so this pre-check validation prevents making a bunch of unnecessary RPC server calls if one of the types would fail validation. This change also fixes the getScans() and getCompactions() API so that when a server is invalid the correct exception is thrown and not wrapped in an AccumuloException.