You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Jason Gerlowski (JIRA)" <ji...@apache.org> on 2016/02/12 19:11:18 UTC
[jira] [Created] (SOLR-8677) SOLR allows creation of shards with
invalid names.
Jason Gerlowski created SOLR-8677:
-------------------------------------
Summary: SOLR allows creation of shards with invalid names.
Key: SOLR-8677
URL: https://issues.apache.org/jira/browse/SOLR-8677
Project: Solr
Issue Type: Bug
Affects Versions: master
Reporter: Jason Gerlowski
Fix For: master
Solr currently has "recommendations" about what constitutes a valid identifier, but doesn't enforce these "recommendations" uniformly. Core (SOLR-8308) and collection (SOLR-8642) names are currently checked, but shards aren't.
{code}
$ bin/solr -e cloud -noprompt
....
$ curl -i -l -k -X GET "http://localhost:8983/solr/admin/collections?action=CREATE&name=coll1&router.name=implicit&numShards=1&shards=bad+shard+name"
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Transfer-Encoding: chunked
<?xml version="1.0" encoding="UTF-8"?>
<response>
<lst name="responseHeader"><int name="status">0</int><int name="QTime">204</int></lst><lst name="failure"><str>org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:Error from server at http://127.0.1.1:8983/solr: Error CREATEing SolrCore 'coll1_bad shard name_replica1': Unable to create core [coll1_bad shard name_replica1] Caused by: Invalid name: 'coll1_bad shard name_replica1' Identifiers must consist entirely of periods, underscores and alphanumerics</str></lst>
</response>
{code}
(Note that the CREATE command above returned 200-OK, and the failure was only apparent when viewing the message.)
A CLUSTERSTATUS shows that the shard was actually created, but has no underlying cores.
{code}
$ curl -i -l -k -X GET "http://localhost:8983/solr/admin/collections?action=CLUSTERSTATUS&wt=json&indent=true"
...
"collections":{
"coll1":{
"replicationFactor":"1",
"shards":{"bad shard name":{
"range":null,
"state":"active",
"replicas":{}}},
"router":{"name":"implicit"},
"maxShardsPerNode":"1",
"autoAddReplicas":"false",
"znodeVersion":1,
"configName":"gettingstarted"},
...
{code}
This JIRA proposes adding a check to ensure that shard names meet SOLR's identifier "recommendations". This should prevent users from accidentally putting themselves in a bad state.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org