[ https://issues.apache.org/jira/browse/SOLR-14326?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John Wooden resolved SOLR-14326. -------------------------------- Fix Version/s: 8.9 main (9.0) Resolution: Fixed > Number of tlog replicas off by one when restoring collections > ------------------------------------------------------------- > > Key: SOLR-14326 > URL: https://issues.apache.org/jira/browse/SOLR-14326 > Project: Solr > Issue Type: Bug > Components: Backup/Restore > Affects Versions: 7.7.2, 8.0 > Reporter: John Wooden > Priority: Minor > Fix For: main (9.0), 8.9 > > Time Spent: 20m > Remaining Estimate: 0h > > When making a request to restore a collection, the quantity of tlog replicas > will always be off by one when restoring a collection that doesn't contain > nrt replicas or when specifying the quantity of replicas in the request > itself. > {quote}/admin/collections?action=RESTORE&name=<NAME>&location=<PATH>&collection=<COLLECTION>&tlogReplicas=1&pullReplicas=1 > {quote} > Despite the backup AND/OR the request specifying 1 Tlog & 1 Pull replica, > this request will create 2 Tlog replicas. On a 2-node cluster with > maxShardsPerNode=1, the 1 pull replica is never created due to the excess > tlog replica meeting the maxShardsPerNode limit. > > This is due to a flawed comparison where an int meant to be an iterator for > tlog replicas is checked if it is greater than zero, however, since that > variable was initialized as 0 just prior it will never be greater than zero. > The fix is to compare the _desired_ number of tlog replicas (like nrt) rather > than the iterator. > > {quote}int createdNrtReplicas = 0, {color:#de350b}createdTlogReplicas = > 0{color}, createdPullReplicas = 0; > // We already created either a NRT or an TLOG replica as leader > if (numNrtReplicas > 0) { > createdNrtReplicas++; > } else if ({color:#de350b}createdTlogReplicas > 0{color}) { > createdTlogReplicas++; > } > {quote} > > > > -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org For additional commands, e-mail: issues-h...@solr.apache.org