[ 
https://issues.apache.org/jira/browse/SOLR-11537?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16217183#comment-16217183
 ] 

Shawn Heisey commented on SOLR-11537:
-------------------------------------

Yes, I discussed this with [~dsmiley] on the dev IRC channel as he mentioned.  
I also fired off an email to [~erickerickson] asking for his opinion on whether 
it looked as bad to him as it did to me.

After a look at git history, I think that the commit for SOLR-10755 is what 
caused the new value for SimpleOrderedMap#SerialVersionUID.  That change 
certainly looked innocent enough.  If I'm right, then if SimpleOrderedMap had 
contained a hard-coded definition of SerialVersionUID, there wouldn't have been 
an issue.

We should look at any other classes that are transmitted with the javabin 
format to see if any are missing SerialVersionUID, find out what the compiler's 
calculated value is, and explicitly set them.


> Add Replica after upgrading from Solr 6.2.1 to Solr 7.1.0 throws 
> InvalidClassException
> --------------------------------------------------------------------------------------
>
>                 Key: SOLR-11537
>                 URL: https://issues.apache.org/jira/browse/SOLR-11537
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: SolrCloud
>    Affects Versions: 7.1
>         Environment: Solr 6.2.1 & Solr 7.1.0
>            Reporter: Atita Arora
>
> We have a Solr cloud running with multiple collections with each collection 
> split over 6 shards with replication factor of 2.
> We would want to use some advance features like  LTR and advance analysis 
> using heavily nested documents, thus we wished to upgrade.
> So we attempted to upgrade one of the nodes from the cluster to Solr 7.1.0.
> Ideally when restarted the node happily became the part of cluster while when 
> attempted to ADDREPLICA through API and through Admin console we ran into the 
> below issue :
> null:org.apache.solr.common.SolrException: java.io.InvalidClassException: 
> org.apache.solr.common.util.SimpleOrderedMap; local class incompatible: 
> stream classdesc serialVersionUID = -2149411884323073227, local class 
> serialVersionUID = 4921066926612345812
>       at 
> org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:61)
>       at 
> org.apache.solr.handler.admin.CollectionsHandler.handleResponse(CollectionsHandler.java:301)
>       at 
> org.apache.solr.handler.admin.CollectionsHandler.invokeAction(CollectionsHandler.java:243)
>       at 
> org.apache.solr.handler.admin.CollectionsHandler.handleRequestBody(CollectionsHandler.java:221)
>       at 
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:177)
>       at 
> org.apache.solr.servlet.HttpSolrCall.handleAdmin(HttpSolrCall.java:745)
>       at 
> org.apache.solr.servlet.HttpSolrCall.handleAdminRequest(HttpSolrCall.java:726)
>       at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:507)
>       at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:382)
>       at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:326)
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1751)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>       at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>       at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
>       at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>       at 
> org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>       at org.eclipse.jetty.server.Server.handle(Server.java:534)
>       at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
>       at 
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
>       at 
> org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
>       at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108)
>       at 
> org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
>       at java.lang.Thread.run(Thread.java:745)
> Caused by: java.io.InvalidClassException: 
> org.apache.solr.common.util.SimpleOrderedMap; local class incompatible: 
> stream classdesc serialVersionUID = -2149411884323073227, local class 
> serialVersionUID = 4921066926612345812
>       at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:616)
>       at 
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1630)
>       at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1521)
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1781)
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
>       at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
>       at java.util.ArrayList.readObject(ArrayList.java:791)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       at 
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)
>       at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1909)
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
>       at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)
>       at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
>       at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)
>       at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
>       at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
>       at 
> org.apache.solr.client.solrj.SolrResponse.deserialize(SolrResponse.java:59)
>       ... 36 more



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to