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

Robert Joseph Evans commented on STORM-448:
-------------------------------------------

There are a few cases where an upgrade changes internal classes that storm 
uses, and are serialized out into zookeeper, or onto the local file system.  In 
general if you kill all of the running topologies before upgrading you will not 
run into this situation.  There is nothing that your Bolt/Spout code can do to 
work around this issue.  It is completely internal to storm.  Ideally in the 
future we would switch to a different serialization system like Thrift, 
Protocol Buffers, or some kryo schemes, that would allow us to maintain binary 
compatibility of these data structures between upgrades.

STORM-170  STORM-79 and STORM-432 all seem to want to cover this same thing in 
some way. I am going to close this as a dupe of those, but if you disagree feel 
free to reopen this issue.

> Apache Storm Nimbus getting dead
> --------------------------------
>
>                 Key: STORM-448
>                 URL: https://issues.apache.org/jira/browse/STORM-448
>             Project: Apache Storm (Incubating)
>          Issue Type: Bug
>    Affects Versions: 0.9.2-incubating
>         Environment: Centos 6.4 , Apache storm 0.9.2 , Apache ZooKeeper-3.4.6
>            Reporter: PaVan
>
> Apache storm nimbus getting dead due to serialVersionUID mismatch issue.
> Caused by: java.io.InvalidClassException: 
> backtype.storm.daemon.common.SupervisorInfo; local class incompatible: stream 
> classdesc serialVersionUID = -292327522856879
> 2176, local class serialVersionUID = -6599159272110777305
>         at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:617)
>         at 
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1622)
>         at 
> java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
>         at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
>         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
>         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
>         at backtype.storm.utils.Utils.deserialize(Utils.java:55)
>         ... 29 more



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to