Details
-
Improvement
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
4.10.3
-
None
-
None
Description
Currently, exceptions thrown by SolrJ are do not provide sufficient information that would enable graceful error handling. Here are some examples:
When a Solr Collection does not exist, SolrJ throws ErrorCode.BAD_REQUEST with message "Could not find collection: " or "Could not find collection in zk: ". The only part of the exception that hints to the type of problem is the message. However, a hardcoded text message is not a reliable point of data to be used in exception handling. It would be much cleaner if SolrJ expanded its library of Error Codes and used them to specify what type of error has occurred. E.g. :
ErrorCode.CANNOT_FIND_COLLECTION (for the above example)
ErrorCode.NO_LIVE_NODES (instead of just SolrServerException("No live SolrServers available to handle this request"))
ErrorCode.BAD_RESPONSE (instead of just SolrServerException("Expected JSON object in response from ...)
etc