I think you're saying you want to prove out the upgrade in some kind
of test setup then switch live traffic. What's commonly used for that
is collection aliasing. You just create a new collection and populate
it and check it out. When you're satisfied that it's doing what you
want, use the collections API CREATEALIAS command to seamlessly
Here's the sequence:
old_collection is active
create new_collection, index to it and make sure it is doing what you want
CREATEALIAS pointing old_collection at new_colletion.

The advantage here is that you have as long as you want to verify your
new collection is fine. You can also switch back if you need to.

The disadvantage is that you effectively need extra hardware. You can
mitigate this somewhat by bringing up your new collection with a
limited number of replicas and after switching you delete replicas
from the old collection and add them to the new one. Be very very
careful here though that your collection commands
(ADDREPLICA/DELETEREPLICA) don't actually operate on the new


On Sun, Apr 15, 2018 at 10:22 AM, Shawn Heisey <apa...@elyograg.org> wrote:
> On 4/15/2018 1:22 AM, Moshe Recanati | KMS wrote:
>> We’re using SolrCloud as part of our product solution for High
>> Availability.
>> During upgrade of a version we need to run full index build on our Solr
>> data.
> What are you upgrading?  If it's Solr, you should pause/stop indexing while
> you do the upgrade.  You'll have to stop Solr processes to upgrade them, and
> even if you're using an external load balancer, it takes a little bit of
> time for failover to occur.
> It would be up to your indexing software to handle errors in that situation.
> There is nothing that Solr can do about that.  If your indexing software
> correctly detects and handles errors, then you might be able to restart Solr
> instances without a problem.
>> I would like to know if as part of SolrCloud we can manage it and make
>> sure that items are available during the index so only once specific item is
>> indexed it’s changing with no affect on end-user.
> I can't decipher exactly what you're asking here.
> Thanks,
> Shawn

Reply via email to