Hi,

I am running Ignite 2.3 using Cassandra as my persistence store.

I got unmarshall error when a server node trying to unmarshall an object of old 
version from Cassandra.

This is the scenario:

1.       Object of ClassA (older version) is serialized and persisted into 
Cassandra

2.       ClassA is updated with new fields

3.       Server node's classpath has new ClassA class file.

4.       Server node is deployed to the Ignite grid.  It tries to deserialize 
from the serialized object of ClassA (older version) and results the result to 
a query.  Then got this exception:


Caused by: org.apache.ignite.IgniteCheckedException: Failed to deserialize 
object with given class loader: 
[clsLdr=org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager$CacheClassLoader@3bc180c9,
 err=Unexpected error occurred during unmarshalling of an instance of the 
class: java.time.Ser. Check that all nodes are running the same version of 
Ignite and that all nodes have GridOptimizedMarshaller configured with 
identical optimized classes lists, if any (see setClassNames and 
setClassNamesPath methods). If your serialized classes implement 
java.io.Externalizable interface, verify that serialization logic is correct.]

        at 
org.apache.ignite.internal.marshaller.optimized.OptimizedMarshaller.unmarshal0(OptimizedMarshaller.java:236)
 ~[ignite-core-2.3.0-clsa.20180130.59.jar:2.3.0-clsa.20180130.59]

        at

I believe this use case is pretty normal.
Do you have any recommendation/best practice on how I can avoid this error?  Is 
BinaryObject able to prevent this issue from happening?

Thanks,
Calvin

Calvin KL Wong
Sr. Lead Engineer, Execution Services
D  +852 2600 7983  |  M  +852 9267 9471  |  T  +852 2600 8888
5/F, One Island East, 18 Westlands Road, Island East, Hong Kong

[:1. Social Media Icons:CLSA_Social Media 
Icons_linkedin.png]<https://hk.linkedin.com/company/clsa>[:1. Social Media 
Icons:CLSA_Social Media 
Icons_twitter.png]<https://twitter.com/clsainsights?lang=en>[:1. Social Media 
Icons:CLSA_Social Media 
Icons_youtube.png]<https://www.youtube.com/channel/UC0qWp_lLnOcRYmBlCNQgZKA>[:1.
 Social Media Icons:CLSA_Social Media 
Icons_facebook.png]<https://www.facebook.com/clsacommunity/>

clsa.com<https://www.clsa.com/>
Insights. Liquidity. Capital.

[CLSA_RGB]<https://www.clsa.com/member>

A CITIC Securities Company

The content of this communication is intended for the recipient and is subject 
to CLSA Legal and Regulatory Notices.
These can be viewed at https://www.clsa.com/disclaimer.html or sent to you upon 
request.
Please consider before printing. CLSA is ISO14001 certified and committed to 
reducing its impact on the environment.

Reply via email to