Hello, Guys. I found that CacheConfiguration which implements Serializable contains not serializable fields by default.
CacheConfiguration -> affMapper -> CacheDefaultBinaryAffinityKeyMapper -> proc -> CacheObjectBinaryProcessorImpl. Is this a bug or I miss something? Simple reproducer: ``` public class SimpleSerializableTet extends GridCommonAbstractTest { public void testRemoteFilterFactoryClient() throws Exception { Ignite g = startGrid(0); IgniteCache<Object, Object> cache = g.getOrCreateCache("TEST_CACHE"); CacheConfiguration ccfg = cache.getConfiguration(CacheConfiguration.class); assertTrue(ccfg instanceof Serializable); assertTrue(ccfg.getAffinityMapper() instanceof Serializable); try (ByteArrayOutputStream bos = new ByteArrayOutputStream()) { ObjectOutput out = new ObjectOutputStream(bos); out.writeObject(ccfg); out.flush(); } } } ``` Exception is: ``` java.io.NotSerializableException: org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184) ``` -- Nikolay Izhikov nizhikov....@gmail.com