You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Mike Thomsen <mi...@gmail.com> on 2015/03/14 18:26:19 UTC

Using the collections API to create a new collection

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

Re: Using the collections API to create a new collection

Posted by Mike Thomsen <mi...@gmail.com>.
Thanks. I think I found the final problem that I was facing in this ticket:

https://issues.apache.org/jira/browse/SOLR-5306

On Sun, Mar 15, 2015 at 11:53 AM, Erick Erickson <er...@gmail.com>
wrote:

> 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 <mi...@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 <an...@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 <mi...@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
> >>
>

Re: Using the collections API to create a new collection

Posted by Erick Erickson <er...@gmail.com>.
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 <mi...@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 <an...@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 <mi...@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
>>

Re: Using the collections API to create a new collection

Posted by Mike Thomsen <mi...@gmail.com>.
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 <an...@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 <mi...@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
>

Re: Using the collections API to create a new collection

Posted by Anshum Gupta <an...@anshumgupta.net>.
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 <mi...@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 <er...@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 <mi...@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

Re: Using the collections API to create a new collection

Posted by Mike Thomsen <mi...@gmail.com>.
I added this to my solr.xml and restarted, but it didn't do anything even
though the path is valid and /opt/configsets contains a folder called base
with a conf folder and valid schema and solrconfig...

<solr>
        <str
name="configSetBaseDir">${configSetBaseDir:/opt/configsets}</str>
        <solrcloud>

Any ideas? Is there a way to force an update into zookeeper? Or should I
just purge the zookeeper data?

On Sat, Mar 14, 2015 at 3:02 PM, Mike Thomsen <mi...@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 <er...@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 <mi...@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
>>
>
>

Re: Using the collections API to create a new collection

Posted by Mike Thomsen <mi...@gmail.com>.
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 <er...@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 <mi...@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
>

Re: Using the collections API to create a new collection

Posted by Erick Erickson <er...@gmail.com>.
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 <mi...@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