Description
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:
$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
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:
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."}
Attachments
Attachments
Issue Links
- is related to
-
SOLR-12481 update.autoCreateFields must be set via Config API command 'set-user-property', but 'bin/solr create' tells users to use the default action 'set-property', which fails because the property is not editable
- Closed
- relates to
-
SOLR-11631 Schema API always has status 0
- Closed