Hi, Peer class loading can be used for computations (like the closure that you pass to affinityRun method), but not for the model classes that are stored in cache. That's why the closure is successfully sent to the server node, but fails on the localPeek - it tries to deserialize the value, but doesn't have the class for it.
When you read the data on server side you should either explicitly deploy the model classes by adding them to 'libs' folder (you already tried this), or you can work with binary objects [1]. In the latter case the code should look like this: BinaryObject bo = productCache.<String, BinaryObject>withKeepBinary().localPeek(String.valueOf(key)); updateCacheEntry(columnEntry.getValue().getEdge(), bo); updateCacheEntry(...) method also be modified to work with the binary object. To modify the object use binary builder [2]. [1] https://apacheignite.readme.io/docs/binary-marshaller#binaryobject-cache-api [2] https://apacheignite.readme.io/docs/binary-marshaller#modifying-binary-objects-using-binaryobjectbuilder -Val -- View this message in context: http://apache-ignite-users.70518.x6.nabble.com/ClassNotFoundException-with-affinity-run-tp5359p5370.html Sent from the Apache Ignite Users mailing list archive at Nabble.com.
