empty clusterstate.json node. OK, you're on state format 2 (the modern one) so that's good. No need to MIGRATESTATE
The admin UI>>cloud>>tree view should have a cluster.properties (IIRC the name correctly, it'll be fairly obvious). If you have no non-default values it'll be totally missing. It's a sibling znode to clusterstate.json. On page 56 of the 7.0 manual you'll find the command to set legacyCloud. I recommend you download the PDF as it's easier to search until someone breaks loose the time to get the new doc site search working.... Here's the short form: ./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:2181 -cmd clusterprop -name legacyCloud -val true If that works you'll see a node in your ZK tree. Best, Erick On Mon, Oct 30, 2017 at 9:13 AM, Dave Seltzer <dselt...@tveyes.com> wrote: >> You may have to set legacyCloud=true in your cluster properties >> Check your cluster properties (top level znode in ZooKeeper). > > How would I check this? Would it appear in the Solr Cloud interface, or do > I have to query Zookeeper? > >> Or, try the MIGRATESTATEFORMAT collection API on your 6x collection >> first. If your current installation has a single clusterstate.json >> that contains all of your collection information, then this would be >> indicated. > > There is a single /clusterstate.json but it is an empty object. Rather, > each collection has a state.json which seems to indicate the state of the > cluster. > > Does that mean I'm using the "zookeeper is the truth" system or the old > system? > > Thanks! > > -Dave > > > On Mon, Oct 30, 2017 at 11:55 AM, Erick Erickson <erickerick...@gmail.com> > wrote: > >> You may have to set legacyCloud=true in your cluster properties. In >> the Solr reference guide (7.0) there's a section "Changes to Default >> Behaviors" that'll tell you a bit about that. Check your cluster >> properties (top level znode in ZooKeeper). >> >> Or, try the MIGRATESTATEFORMAT collection API on your 6x collection >> first. If your current installation has a single clusterstate.json >> that contains all of your collection information, then this would be >> indicated. >> >> Mind you I'd experiment on a non-prod system first.... >> >> Best, >> Erick >> >> >> >> On Mon, Oct 30, 2017 at 8:44 AM, Dave Seltzer <dselt...@tveyes.com> wrote: >> > I have a Solr collection with 1 shard and around 40 replicas hosted on >> Solr >> > 6.6.0 >> > >> > I added a Solr 7.1 server to the cluster and then tried to add a replica >> > (ADDREPLICA) onto the new server but got this message: >> > >> >> Error CREATEing SolrCore 'content_collection_20171013_ >> shard1_replica37': >> > non legacy mode coreNodeName missing {collection.configName=content, >> > shard=shard1, collection=content_collection_20171013} >> > >> > Is there something I have to do to prepare this collection for Solr 7.x? >> > >> > Thanks, >> > >> > -Dave >> > >> > [root@crompcoreph02 ~]# curl "http:// >> > [solrclusterloadbalancer]/solr/admin/collections?action= >> ADDREPLICA&collection=content_collection_20171013&shard= >> shard1&node=$crompcoreph02:8983_solr" >> > <?xml version="1.0" encoding="UTF-8"?> >> > <response> >> > <lst name="responseHeader"><int name="status">500</int><int >> > name="QTime">222</int></lst><lst name="failure"><str >> > name="crompcoreph02:8983_solr">org.apache.solr.client.solrj. >> impl.HttpSolrClient$RemoteSolrException:Error >> > from server at http://crompcoreph02:8983/solr: Error CREATEing SolrCore >> > 'content_collection_20171013_shard1_replica37': non legacy mode >> > coreNodeName missing {collection.configName=content, shard=shard1, >> > collection=content_collection_20171013}</str></lst><str name="Operation >> > addreplica caused >> > exception:">org.apache.solr.common.SolrException:org.apache.solr.common. >> SolrException: >> > ADDREPLICA failed to create replica</str><lst name="exception"><str >> > name="msg">ADDREPLICA failed to create replica</str><int >> > name="rspCode">500</int></lst><lst name="error"><lst >> name="metadata"><str >> > name="error-class">org.apache.solr.common.SolrException</str><str >> > name="root-error-class">org.apache.solr.common. >> SolrException</str></lst><str >> > name="msg">ADDREPLICA failed to create replica</str><str >> > name="trace">org.apache.solr.common.SolrException: ADDREPLICA failed to >> > create replica >> > at >> > org.apache.solr.handler.admin.CollectionsHandler.handleResponse( >> CollectionsHandler.java:300) >> > at >> > org.apache.solr.handler.admin.CollectionsHandler.invokeAction( >> CollectionsHandler.java:237) >> > at >> > org.apache.solr.handler.admin.CollectionsHandler.handleRequestBody( >> CollectionsHandler.java:215) >> > at >> > org.apache.solr.handler.RequestHandlerBase.handleRequest( >> RequestHandlerBase.java:173) >> > at >> > org.apache.solr.servlet.HttpSolrCall.handleAdmin(HttpSolrCall.java:748) >> > at >> > org.apache.solr.servlet.HttpSolrCall.handleAdminRequest( >> HttpSolrCall.java:729) >> > at org.apache.solr.servlet.HttpSolrCall.call( >> HttpSolrCall.java:510) >> > at >> > org.apache.solr.servlet.SolrDispatchFilter.doFilter( >> SolrDispatchFilter.java:361) >> > at >> > org.apache.solr.servlet.SolrDispatchFilter.doFilter( >> SolrDispatchFilter.java:305) >> > at >> > org.eclipse.jetty.servlet.ServletHandler$CachedChain. >> doFilter(ServletHandler.java:1691) >> > at >> > org.eclipse.jetty.servlet.ServletHandler.doHandle( >> ServletHandler.java:582) >> > at >> > org.eclipse.jetty.server.handler.ScopedHandler.handle( >> ScopedHandler.java:143) >> > at >> > org.eclipse.jetty.security.SecurityHandler.handle( >> SecurityHandler.java:548) >> > at >> > org.eclipse.jetty.server.session.SessionHandler. >> doHandle(SessionHandler.java:226) >> > at >> > org.eclipse.jetty.server.handler.ContextHandler. >> doHandle(ContextHandler.java:1180) >> > at >> > org.eclipse.jetty.servlet.ServletHandler.doScope( >> ServletHandler.java:512) >> > at >> > org.eclipse.jetty.server.session.SessionHandler. >> doScope(SessionHandler.java:185) >> > at >> > org.eclipse.jetty.server.handler.ContextHandler. >> doScope(ContextHandler.java:1112) >> > at >> > org.eclipse.jetty.server.handler.ScopedHandler.handle( >> ScopedHandler.java:141) >> > at >> > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle( >> ContextHandlerCollection.java:213) >> > at >> > org.eclipse.jetty.server.handler.HandlerCollection. >> handle(HandlerCollection.java:119) >> > at >> > org.eclipse.jetty.server.handler.HandlerWrapper.handle( >> HandlerWrapper.java:134) >> > at >> > org.eclipse.jetty.rewrite.handler.RewriteHandler.handle( >> RewriteHandler.java:335) >> > at >> > org.eclipse.jetty.server.handler.HandlerWrapper.handle( >> HandlerWrapper.java:134) >> > at org.eclipse.jetty.server.Server.handle(Server.java:534) >> > at org.eclipse.jetty.server.HttpChannel.handle( >> HttpChannel.java:320) >> > at >> > org.eclipse.jetty.server.HttpConnection.onFillable( >> HttpConnection.java:251) >> > at >> > org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded( >> AbstractConnection.java:273) >> > at org.eclipse.jetty.io.FillInterest.fillable( >> FillInterest.java:95) >> > at >> > org.eclipse.jetty.io.SelectChannelEndPoint$2.run( >> SelectChannelEndPoint.java:93) >> > at >> > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume. >> executeProduceConsume(ExecuteProduceConsume.java:303) >> > at >> > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume. >> produceConsume(ExecuteProduceConsume.java:148) >> > at >> > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run( >> ExecuteProduceConsume.java:136) >> > at >> > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob( >> QueuedThreadPool.java:671) >> > at >> > org.eclipse.jetty.util.thread.QueuedThreadPool$2.run( >> QueuedThreadPool.java:589) >> > at java.lang.Thread.run(Thread.java:748) >> > </str><int name="code">500</int></lst> >> > </response> >>