Re: Question about CloudSolrServer
Thanks *Shawn.* i was using older version of solrj. upgrading it to newer version worked. Thank you. On Thu, Jun 9, 2016 at 11:41 AM, Shawn Heisey wrote: > On 6/8/2016 11:44 PM, Naveen Pajjuri wrote: > > Trying to migrate from HttpSolrServer to CloudSolrServer. getting the > > following exception while adding docs using CloudSolrServer. > > > > > > org.apache.solr.common.SolrException: Unknown document router > > '{name=compositeId}' > > > > at org.apache.solr.common.cloud.DocRouter.getDocRouter(DocRouter.java:46) > > > > whereas my cluterstate json says -- > > > > "maxShardsPerNode":"1", > > "router":{"name":"compositeId"}, > > "replicationFactor":"1". > > I am guessing that you are using a much older version of SolrJ than the > Solr version it is talking to. The '{"name":"compositeId"}' structure > appears to be the way that newer versions of Solr record the router in > zookeeper, which is something that the older versions of SolrJ will not > know how to handle. > > Mixing different versions of Solr and SolrJ will work very well, as long > as you're not using the cloud client. That client is so tightly coupled > to SolrCloud internals that it does not work well with a large version > difference, especially if the client is older than the server. > > Most likely you'll need to upgrade your SolrJ version. At the same > time, switching to CloudSolrClient is probably a good idea -- the class > names that end in Server are deprecated in 5.x and gone in 6.x. > > Thanks, > Shawn > >
Re: Question about CloudSolrServer
On 6/8/2016 11:44 PM, Naveen Pajjuri wrote: > Trying to migrate from HttpSolrServer to CloudSolrServer. getting the > following exception while adding docs using CloudSolrServer. > > > org.apache.solr.common.SolrException: Unknown document router > '{name=compositeId}' > > at org.apache.solr.common.cloud.DocRouter.getDocRouter(DocRouter.java:46) > > whereas my cluterstate json says -- > > "maxShardsPerNode":"1", > "router":{"name":"compositeId"}, > "replicationFactor":"1". I am guessing that you are using a much older version of SolrJ than the Solr version it is talking to. The '{"name":"compositeId"}' structure appears to be the way that newer versions of Solr record the router in zookeeper, which is something that the older versions of SolrJ will not know how to handle. Mixing different versions of Solr and SolrJ will work very well, as long as you're not using the cloud client. That client is so tightly coupled to SolrCloud internals that it does not work well with a large version difference, especially if the client is older than the server. Most likely you'll need to upgrade your SolrJ version. At the same time, switching to CloudSolrClient is probably a good idea -- the class names that end in Server are deprecated in 5.x and gone in 6.x. Thanks, Shawn
Question about CloudSolrServer
Hi, Trying to migrate from HttpSolrServer to CloudSolrServer. getting the following exception while adding docs using CloudSolrServer. org.apache.solr.common.SolrException: Unknown document router '{name=compositeId}' at org.apache.solr.common.cloud.DocRouter.getDocRouter(DocRouter.java:46) whereas my cluterstate json says -- "maxShardsPerNode":"1", "router":{"name":"compositeId"}, "replicationFactor":"1". please advice. PS : i'm using solr 4.10.4. Thanks, Naveen.