[
https://issues.apache.org/jira/browse/SOLR-16698?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17712760#comment-17712760
]
ilariapet commented on SOLR-16698:
----------------------------------
With the 'Sease' team, I investigated this part trying to handle the typos and
get a clearer definition of the error.
By examining the *_Rest_* part, it appears that when attempting to insert
payloads for a +nonexistent ManagedResource+ (either due to a typo or because
it has not yet been configured), the *doPut* method in
_org/apache/solr/rest/RestManager.java_ (only responsible for creating a new
ManagedResource in the RestManager) is used instead of the *doPut* method in
_org/apache/solr/rest/ManagedResource.java_ (which is responsible for handling
the insertion of request payloads).
The approach of modifying the *doPut* method in _RestManager.java_ by
reconfiguring the conditional statement and error message has been considered
but we are not sure if anything else ends up here that shouldn't and it would
not be super clear what happens and the reasons when reading the code.
Therefore we came to the conclusion that the reported issue is too extensive,
as it also includes other classes, conditions, etc., and should be treated more
broadly, i.e. +should be addressed the whole problem of malformed URLs+ (not
only the case of feature-store and model-store).
> Unclear error message due to a typo
> -----------------------------------
>
> Key: SOLR-16698
> URL: https://issues.apache.org/jira/browse/SOLR-16698
> Project: Solr
> Issue Type: Bug
> Components: contrib - LTR
> Affects Versions: 9.1.1
> Reporter: ilariapet
> Priority: Minor
>
> If we execute a PUT request with a typo in the "feature-store" endpoint (we
> write feature*s*-store with an additional {*}s{*}), we receive an unclear
> error message:
> {code:java}
> curl -XPUT "http://localhost:8983/solr/books/schema/features-store"
> --data-binary "@features.json" -H "Content-type:application/json" {
> "responseHeader":{ "status":400, "QTime":9}, "error":{ "metadata":[
> "error-class","org.apache.solr.common.SolrException",
> "root-error-class","org.apache.solr.common.SolrException"], "msg":"Expected
> Map to create a new ManagedResource but received a java.util.ArrayList",
> "code":400}, "error":{ "metadata":[
> "error-class","org.apache.solr.common.SolrException",
> "root-error-class","org.apache.solr.common.SolrException"], "msg":"Expected
> Map to create a new ManagedResource but received a java.util.ArrayList",
> "code":400}}{code}
> The same happens with a typo in the "model-store" (we write model*s*-store
> with an additional {*}s{*}):
> {code:java}
> curl -XPUT "http://localhost:8983/solr/books/schema/models-store"
> --data-binary "@model.json" -H "Content-type:application/json" {
> "responseHeader":{ "status":500, "QTime":1}, "error":{ "msg":"class
> org.apache.solr.ltr.model.LinearModel",
> "trace":"java.lang.ClassCastException: class
> org.apache.solr.ltr.model.LinearModel\n\tat
> java.base/java.lang.Class.asSubclass(Class.java:3924)\n\tat
> org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:533)\n\tat
> ... java.base/java.lang.Thread.run(Thread.java:833)\n", "code":500}{code}
> These error messages could be improved with a clearer definition of the error.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]