Я использую версию ignite 2.7.6. Я создал кэш со свойством write-behind и я также использую стороннее постоянство. Когда я постоянно помещаю данные в этот кеш для некоторых ключей, данные не сохраняются в сторонних, а также в кеше. Я использую синхронный вызов put для вставки данных в кэш.
CacheCreation Code:
CacheConfiguration<String, JsonObject> abcCacheConfigConfig = new CacheConfiguration<String, JsonObject>();
abcCacheConfig.setWriteThrough(true);
abcCacheConfig.setReadThrough(true);
abcCacheConfig.setWriteBehindEnabled(true);
CacheSessionProcessor cacheSessionProcessor = new CacheSessionProcessor("HBASE_TABLE");
abcCacheConfig.setCacheStoreFactory(FactoryBuilder.factoryOf(ABCCacheStoreAdapter.class));
abcCacheConfig.setCacheStoreSessionListenerFactories(FactoryBuilder.factoryOf(cacheSessionProcessor));
abcCacheConfig.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL);
abcCacheConfig.setWriteBehindFlushFrequency(500);
IgniteCache<String, JsonObject> calMailCache = ignite.getOrCreateCache(abcCacheConfig);
Код вставки в кэш:
IgniteCache<String, JsonObject> abcCache = ignite.getOrCreateCache("ABC_CACHE");
abcCache.put("rowkey",jsonObejct);