[jira] [Comment Edited] (SOLR-12482) Config API returns status 0 for failed operations

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Comment Edited] (SOLR-12482) Config API returns status 0 for failed operations

JIRA jira@apache.org

    [ https://issues.apache.org/jira/browse/SOLR-12482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16511212#comment-16511212 ]

Steve Rowe edited comment on SOLR-12482 at 6/13/18 2:44 PM:
------------------------------------------------------------

bq. I feel like this might be a duplicate or at least related to an issue I filed a while ago, SOLR-11896? WDYT?

I don't think it's a duplicate, because:

# This issue is about the config api, and SOLR-11896 is about the core admin api; and
# This issue is about improperly reporting a failed config api operation, but on SOLR-11896 the core admin api succeeds when it shouldn't because it ignores invalid params.

Definitely related though, in that both are *silently* misbehaving APIs.


was (Author: steve_rowe):
bq. I feel like this might be a duplicate or at least related to an issue I filed a while ago, SOLR-11896? WDYT?

I don't think it's a duplicate, because:

# This issue is about the config api, and SOLR-11896 is about the core admin api; and
# This issue is about improperly reporting a failed config api operation, but on SOLR-11896 the core admin api succeeds when it shouldn't because it ignores invalid params.

Definitely related though, in that both are misbehaving APIs.

> Config API returns status 0 for failed operations
> -------------------------------------------------
>
>                 Key: SOLR-12482
>                 URL: https://issues.apache.org/jira/browse/SOLR-12482
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public)
>            Reporter: Steve Rowe
>            Assignee: Steve Rowe
>            Priority: Major
>
> {{bin/solr config}} depends on the status from Config API calls to determine whether the operation succeeded, but apparently the Config API can return status 0 for failed operations.  As a result, {{bin/solr config}} will claim success.  For example, after running {{bin/solr start -c}} and {{bin/solr create -c mycoll}}:
> {noformat}
> $PROMPT$ bin/solr config -c mycoll -z localhost:9983 -property FOOBAR -value BAZ
> [...]
> POSTing request to Config API: http://192.168.1.12:8983/solr/mycoll/config
> {"set-property":{"FOOBAR":"BAZ"}}
> Successfully set-property FOOBAR to BAZ
> {noformat}
> But the {{FOOBAR}} property cannot be set via {{set-property}}, because it is not on the editable properties whitelist in {{EditableSolrConfigAttributes.json}}.
> This is evident from the direct Config API call:
> {noformat}
> PROMPT$ curl -X POST -d '{set-property:{FOOBAR:BAZ}}'
> {
>   "responseHeader":{
>     "status":0,
>     "QTime":1},
>   "errorMessages":[{
>       "set-property":{"FOOBAR":"BAZ"},
>       "errorMessages":["'FOOBAR' is not an editable property"]}],
>   "WARNING":"This response format is experimental.  It is likely to change in the future."}
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]