On 10/29/2010 4:33 PM, Shawn Heisey wrote:
The recommended method of safely upgrading Solr that I've read about is to upgrade slave servers, keeping your production application pointed either at another set of slave servers or your master servers. Then you test it with a dev copy of your application, and once you're sure it's working, you can switch production traffic over to the upgraded set. If it falls over, you just switch back to the old version. Once you're sure it's TRULY working, you upgrade everything else. To convert fully to the new index format, you have the option of reindexing or optimizing your existing indexes.

I like this method, and this is the way I want to do it, except that the new javabin format makes it impossible. I need a viable way to replicate indexes from a set of 1.4.1 master servers to 3.1-dev slaves. Delving into the source and tackling the problem myself is something I would truly love to do, but I lack the necessary skills.

Since I don't have the java skills required to solve the underlying problem, I have come up with a solution in the realm that I do understand - my build scripts. I will update the scripts so that they can safely work on the slave machines as well as the masters. They are currently hard-coded to work on the masters. By turning replication off and running the scripts against both server sets, I'll be able to do all my testing.

IMHO this incompatibility with replication is a bug that needs to be fixed before the official release, which is why I filed SOLR-2204. I have found a way around it, but the workaround might not be a viable option for everyone.

Thanks,
Shawn

Reply via email to