I'm working on reproducing a problem reported via the IRC channel.
Started a test cloud with 7.5.0. Initially with two nodes, then again
with 3 nodes. Did this on Windows 10.
Command to create a collection:
bin\solr create -c test2 -shards 30 -replicationFactor 2
For these URLs, I dropped them into a browser, so URL encoding was
handled automatically. I'm sure the URL to start the backup wouldn't
work as-is with curl because it includes characters that need encoding.
Backup URL:
http://localhost:8983/solr/admin/collections?action=BACKUP&name=test2.3&collection=test2&location=C:\Users\elyograg\Downloads\solrbackups&async=sometag
Request status URL:
http://localhost:8983/solr/admin/collections?action=REQUESTSTATUS&requestid=sometag
Here's the raw JSON response from the status URL:
{
"responseHeader":{
"status":0,
"QTime":3},
"success":{
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":2}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":2}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":1}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":35}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":1}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":1}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":33}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":34}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":40}},
"192.168.56.1:8984_solr":{
"responseHeader":{
"status":0,
"QTime":2}},
"192.168.56.1:8984_solr":{
"responseHeader":{
"status":0,
"QTime":2}},
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8984_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8984_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:7574_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":0}},
"192.168.56.1:8983_solr":{
"responseHeader":{
"status":0,
"QTime":1}}},
"sometag135341573915254":{
"responseHeader":{
"status":0,
"QTime":0},
"STATUS":"completed",
"Response":"TaskId: sometag135341573915254 webapp=null
path=/admin/cores
params={core=test2_shard9_replica_n34&async=sometag135341573915254&qt=/admin/cores&name=shard9&action=BACKUPCORE&location=file:///C:/Users/elyograg/Downloads/solrbackups/test2.3&wt=javabin&version=2}
status=0 QTime=0"},
"sometag135341570605052":{
"responseHeader":{
"status":0,
"QTime":0},
"STATUS":"completed",
"Response":"TaskId: sometag135341570605052 webapp=null
path=/admin/cores
params={core=test2_shard1_replica_n1&async=sometag135341570605052&qt=/admin/cores&name=shard1&action=BACKUPCORE&location=file:///C:/Users/elyograg/Downloads/solrbackups/test2.3&wt=javabin&version=2}
status=0 QTime=0"},
"sometag135341570647962":{
"responseHeader":{
"status":0,
"QTime":0},
"STATUS":"completed",
"Response":"TaskId: sometag135341570647962 webapp=null
path=/admin/cores
params={core=test2_shard7_replica_n26&async=sometag135341570647962&qt=/admin/cores&name=shard7&action=BACKUPCORE&location=file:///C:/Users/elyograg/Downloads/solrbackups/test2.3&wt=javabin&version=2}
status=0 QTime=0"},
"status":{
"state":"completed",
"msg":"found [sometag] in completed tasks"}}
As you can see, only 3 (out of 30) shards are mentioned in the response.
When I did the same test on a 2-node cloud example, there were only 2
shards in the response.
Should all 30 shards have been in the response? Is there a bug here?
If I make the request without the async parameter, the response doesn't
contain ANY shard information at all. Because this is an empty
collection, the backup is fast. I expected detailed information to be in
the response. Is that worth an issue in Jira?
Side note: In the status response, the individual shard info that IS
present doesn't indicate what node handled the CoreAdmin call. That
would be useful information to include.
Thanks,
Shawn