lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erick Erickson <erickerick...@gmail.com>
Subject Re: Using the collections API to create a new collection
Date Sun, 15 Mar 2015 15:53:49 GMT
Yes, "configs" is the same as configsets, I tend to use them interchangeably.

You're still missing the point. Once the files are up in Zookeeper, that's where
they live. They do NOT then live on the nodes hosting the replicas. So,
assuming that when you write
bq: Our ZK configuration data is unde /dev-local-solr/configs
you mean that's the directory you specified with the upconfig command, it's
not totally irrelevant to your replicas. When you create your
collection, you give it the name of one of your config sets that you've uploaded
to ZK. It doesn't matter in the least _how_ they go there.

Now whenever one of the replicas for that collection starts up, it contact
ZK and reads the config files and starts up. The replica does _not_
copy the files locally.

HTH,
Erick

On Sun, Mar 15, 2015 at 6:16 AM, Mike Thomsen <mikerthomsen@gmail.com> wrote:
> I tried that with upconfig, and it created it under /configs. Our ZK
> configuration data is under /dev-local-solr/configs. Not sure how to
> specify that. Also, is "configs" the same thing as  "configsets" for the
> version of solr that I'm using?
>
> Thanks,
>
> Mike
>
> On Sat, Mar 14, 2015 at 6:38 PM, Anshum Gupta <anshum@anshumgupta.net>
> wrote:
>
>> Hi Mike,
>>
>> Here's what you want to do:
>> 1. Create or use an existing config set.
>> 2. Upload it to ZooKeeper (
>> https://cwiki.apache.org/confluence/display/solr/Command+Line+Utilities)
>> 3. Use the config name when you create the collection. This would link the
>> config set in zk with your collection.
>>
>> I think it would make a lot of sense for you to go through the getting
>> started with SolrCloud section in the Solr Reference Guide  for 4.5.
>>
>> On Sat, Mar 14, 2015 at 12:02 PM, Mike Thomsen <mikerthomsen@gmail.com>
>> wrote:
>>
>> > I looked in the tree view and I have only a node called "configs."
>> Nothing
>> > called "configsets." That's a serious problem, right? So if I'm reading
>> > this correctly, I should be able to create a configset based on an
>> existing
>> > collection and load it into zookeeper once I find the right location to
>> put
>> > it on our system. Sound right?
>> >
>> > https://cwiki.apache.org/confluence/display/solr/Config+Sets
>> >
>> > Thanks,
>> >
>> > Mike
>> >
>> > On Sat, Mar 14, 2015 at 2:27 PM, Erick Erickson <erickerickson@gmail.com
>> >
>> > wrote:
>> >
>> > > I bet you did not push the configuration to Zookeeper before creating
>> > > the collection.
>> > > If you look in your admin UI, the Cloud link and the "tree" version,
>> > > you'll find
>> > > a "configsets" directory that'll show you what you _have_ put in ZK,
>> and
>> > > I'll
>> > > bet you find nothing like  a config set (containing schema.xml etc)
>> named
>> > > what
>> > > you specified for someExistingCollection. It's not the _collection_
>> > > that should be
>> > > existing, it should be the configset.
>> > >
>> > > It's often a bit confusing because if the configName is not specified,
>> > > the default
>> > > is to look for a config set of the same name as the collection being
>> > > created.
>> > >
>> > > Best,
>> > > Erick
>> > >
>> > > On Sat, Mar 14, 2015 at 10:26 AM, Mike Thomsen <mikerthomsen@gmail.com
>> >
>> > > wrote:
>> > > > We're running SolrCloud 4.5.0. It's just a standard version of
>> > SolrCloud
>> > > > deployed in Tomcat, not something like the Cloudera distribution (I
>> > note
>> > > > that because I can't seem to find solrctl and other things referenced
>> > in
>> > > > the Cloudera tutorials).
>> > > >
>> > > > I'm trying to create a new Solr collection like this:
>> > > >
>> > > >
>> > >
>> >
>> /admin/collections?action=CREATE&name=newCollection&numShards=1&collection.configName=someExistingCollection
>> > > >
>> > > > Then I found this error message in the logs:
>> > > >
>> > > > org.apache.solr.common.cloud.ZooKeeperException: Specified config
>> does
>> > > not
>> > > > exist in ZooKeeper:newCollection2
>> > > >         at
>> > > >
>> > org.apache.solr.cloud.ZkController.readConfigName(ZkController.java:742)
>> > > >         at
>> > > > org.apache.solr.core.ZkContainer.createFromZk(ZkContainer.java:244)
>> > > >         at
>> > > org.apache.solr.core.CoreContainer.create(CoreContainer.java:557)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.handler.admin.CoreAdminHandler.handleCreateAction(CoreAdminHandler.java:465)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:146)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.handleAdminRequest(SolrDispatchFilter.java:655)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:246)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:195)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
>> > > >         at
>> > > >
>> > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
>> > > >         at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown
>> > > Source)
>> > > >         at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
>> > > > Source)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>> > > >         at java.lang.Thread.run(Unknown Source)
>> > > >
>> > > > Mar 14, 2015 1:21:07 PM org.apache.solr.common.SolrException log
>> > > > SEVERE: org.apache.solr.common.SolrException: Error CREATEing
>> SolrCore
>> > > > 'newCollection2_shard1_replica1': Unable to create core:
>> > > > newCollection2_shard1_replica1
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.handler.admin.CoreAdminHandler.handleCreateAction(CoreAdminHandler.java:495)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:146)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.handleAdminRequest(SolrDispatchFilter.java:655)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:246)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:195)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
>> > > >         at
>> > > >
>> > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
>> > > >         at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown
>> > > Source)
>> > > >         at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
>> > > > Source)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>> > > >         at java.lang.Thread.run(Unknown Source)
>> > > > Caused by: org.apache.solr.common.SolrException: Unable to create
>> core:
>> > > > newCollection2_shard1_replica1
>> > > >         at
>> > > >
>> > org.apache.solr.core.CoreContainer.recordAndThrow(CoreContainer.java:936)
>> > > >         at
>> > > org.apache.solr.core.CoreContainer.create(CoreContainer.java:568)
>> > > >         at
>> > > >
>> > >
>> >
>> org.apache.solr.handler.admin.CoreAdminHandler.handleCreateAction(CoreAdminHandler.java:465)
>> > > >         ... 21 more
>> > > > Caused by: org.apache.solr.common.cloud.ZooKeeperException: Specified
>> > > > config does not exist in ZooKeeper:newCollection2
>> > > >         at
>> > > >
>> > org.apache.solr.cloud.ZkController.readConfigName(ZkController.java:742)
>> > > >         at
>> > > > org.apache.solr.core.ZkContainer.createFromZk(ZkContainer.java:244)
>> > > >         at
>> > > org.apache.solr.core.CoreContainer.create(CoreContainer.java:557)
>> > > >         ... 22 more
>> > > >
>> > > > Can someone explain what's going on here? The documentation seems
>> > pretty
>> > > > straight forward about how to call the API to create a new
>> collection.
>> > Is
>> > > > it just the Solr version I'm using being too old for the current wiki
>> > > docs
>> > > > or am I using it incorrectly?
>> > > >
>> > > > My goal here is to create a process where we can easily
>> programatically
>> > > > create new collections for users in a web application.
>> > > >
>> > > > Thanks,
>> > > >
>> > > > Mike
>> > >
>> >
>>
>>
>>
>> --
>> Anshum Gupta
>>

Mime
View raw message