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

Reply via email to