[
https://issues.apache.org/jira/browse/SOLR-7271?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gregory Chanan updated SOLR-7271:
---------------------------------
Description:
SOLR-4221 changed the router format from e.g.:
{code}
...
"router":"compositeId”,
...
{code}
to:
{code}
...
"router":{"name":"compositeId"},
...
{code}
This later commit:
https://github.com/apache/lucene-solr/commit/54a94eedfd5651bb088e8cbd132393b771f5f5c2
added backwards compatibility in the sense that the server can read the old
router format. But the old 4.4 client can't read the new format, e.g. you get:
{code}
org.apache.solr.common.SolrException: Unknown document router
'{name=compositeId}'
at
org.apache.solr.common.cloud.DocRouter.getDocRouter(DocRouter.java:46)
at
org.apache.solr.common.cloud.ClusterState.collectionFromObjects(ClusterState.java:289)
at org.apache.solr.common.cloud.ClusterState.load(ClusterState.java:257)
at org.apache.solr.common.cloud.ClusterState.load(ClusterState.java:233)
at
org.apache.solr.common.cloud.ZkStateReader.createClusterStateWatchersAndUpdate(ZkStateReader.java:357)
at com.cloudera.itest.search.util.ZkExecutor.<init>(ZkExecutor.java:39)
at
com.cloudera.itest.search.util.SearchTestBase.getZkExecutor(SearchTestBase.java:648)
at
com.cloudera.itest.search.util.SearchTestBase.setupSolrURL(SearchTestBase.java:584)
at
com.cloudera.itest.search.util.SearchTestBase.setupEnvironment(SearchTestBase.java:371)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
{code}
was:
SOLR-4221 changed the router format from e.g.:
{code}
...
"router":"compositeId”,
...
{code}
to:
{code}
...
"router":{"name":"compositeId"},
...
{code}
This later commit:
https://github.com/apache/lucene-solr/commit/54a94eedfd5651bb088e8cbd132393b771f5f5c2
added backwards compatibility in the sense that the server can read the old
router format. But the old 4.4 client can't read the new format, e.g. you get:
{code}
org.apache.solr.common.SolrException: Unknown document router
'{name=compositeId}'
at
org.apache.solr.common.cloud.DocRouter.getDocRouter(DocRouter.java:46)
at
org.apache.solr.common.cloud.ClusterState.collectionFromObjects(ClusterState.java:289)
at org.apache.solr.common.cloud.ClusterState.load(ClusterState.java:257)
at org.apache.solr.common.cloud.ClusterState.load(ClusterState.java:233)
at
org.apache.solr.common.cloud.ZkStateReader.createClusterStateWatchersAndUpdate(ZkStateReader.java:357)
at com.cloudera.itest.search.util.ZkExecutor.<init>(ZkExecutor.java:39)
at
com.cloudera.itest.search.util.SearchTestBase.getZkExecutor(SearchTestBase.java:648)
at
com.cloudera.itest.search.util.SearchTestBase.setupSolrURL(SearchTestBase.java:584)
at
com.cloudera.itest.search.util.SearchTestBase.setupEnvironment(SearchTestBase.java:371)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
{code]
> 4.4 client to 4.5+ server compatibility Issue due to DocRouter format
> ---------------------------------------------------------------------
>
> Key: SOLR-7271
> URL: https://issues.apache.org/jira/browse/SOLR-7271
> Project: Solr
> Issue Type: Bug
> Components: SolrCloud
> Affects Versions: 4.5
> Reporter: Gregory Chanan
> Assignee: Gregory Chanan
> Fix For: 4.10.5
>
>
> SOLR-4221 changed the router format from e.g.:
> {code}
> ...
> "router":"compositeId”,
> ...
> {code}
> to:
> {code}
> ...
> "router":{"name":"compositeId"},
> ...
> {code}
> This later commit:
> https://github.com/apache/lucene-solr/commit/54a94eedfd5651bb088e8cbd132393b771f5f5c2
> added backwards compatibility in the sense that the server can read the old
> router format. But the old 4.4 client can't read the new format, e.g. you
> get:
> {code}
> org.apache.solr.common.SolrException: Unknown document router
> '{name=compositeId}'
> at
> org.apache.solr.common.cloud.DocRouter.getDocRouter(DocRouter.java:46)
> at
> org.apache.solr.common.cloud.ClusterState.collectionFromObjects(ClusterState.java:289)
> at org.apache.solr.common.cloud.ClusterState.load(ClusterState.java:257)
> at org.apache.solr.common.cloud.ClusterState.load(ClusterState.java:233)
> at
> org.apache.solr.common.cloud.ZkStateReader.createClusterStateWatchersAndUpdate(ZkStateReader.java:357)
> at com.cloudera.itest.search.util.ZkExecutor.<init>(ZkExecutor.java:39)
> at
> com.cloudera.itest.search.util.SearchTestBase.getZkExecutor(SearchTestBase.java:648)
> at
> com.cloudera.itest.search.util.SearchTestBase.setupSolrURL(SearchTestBase.java:584)
> at
> com.cloudera.itest.search.util.SearchTestBase.setupEnvironment(SearchTestBase.java:371)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]