Hi all. I'm running Solr 7.1 in SolrCloud mode ona a 3-node cluster and tried using the backup/restore API for the first time. Backup worked fine, but when trying to restore the backed-up collection I ran into an unexpected problem with the replication factor setting.
Below command attempts to restore a backup of the collection "demo" with 3 shards, creating 2 replicas per shard: # curl -s -k 'https://localhost:8983/solr/admin/collections?action=restore&name=demo&location=/srv/backup/solr/solr-dev&collection=demo&maxShardsPerNode=2&replicationFactor=2' { "error": { "code": 400, "msg": "Solr cloud with available number of nodes:3 is insufficient for restoring a collection with 3 shards, total replicas per shard 6 and maxShardsPerNode 2. Consider increasing maxShardsPerNode value OR number of available nodes.", "metadata": [ "error-class", "org.apache.solr.common.SolrException", "root-error-class", "org.apache.solr.common.SolrException" ] }, "exception": { "rspCode": 400, "msg": "Solr cloud with available number of nodes:3 is insufficient for restoring a collection with 3 shards, total replicas per shard 6 and maxShardsPerNode 2. Consider increasing maxShardsPerNode value OR number of available nodes." }, "Operation restore caused exception:": "org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Solr cloud with available number of nodes:3 is insufficient for restoring a collection with 3 shards, total replicas per shard 6 and maxShardsPerNode 2. Consider increasing maxShardsPerNode value OR number of available nodes.", "responseHeader": { "QTime": 28, "status": 400 } } It looks to me like the restore API multiplies the replication factor with the number of nodes, which is not how the replication factor behaves in other contexts. The documentation[1] also didn't lead me to expect this behavior: > replicationFactor > > The number of replicas to be created for each shard. Is this expected behavior (by anyone but me)? Should I report it as a bug? [1]: https://lucene.apache.org/solr/guide/7_1/collections-api.html Regards Ansgar Wiechers -- "Abstractions save us time working, but they don't save us time learning." --Joel Spolsky