I mean *CacheConfiguration.setAtomicityMode*[1]
Because transactions makes a sense only for TRANSACTIONAL cache.

[1]: https://apacheignite.readme.io/docs/transactions#section-atomicity-mode

On Sun, Mar 19, 2017 at 11:14 PM, Vladislav Pyatkov <vldpyat...@gmail.com>
wrote:

> Hi
>
> Make sure are you using transactional cache.
>
> On Mar 19, 2017 10:32 PM, "Alisher Alimov" <alimovalis...@gmail.com>
> wrote:
>
>> Hello!
>>
>> I found bug when using CacheStore with Transaction or it’s expected
>> behaviour?
>>
>> Example:
>>
>> CacheConfiguration cacheConfiguration = new CacheConfiguration("test.no-op");
>> cacheConfiguration.setWriteThrough(true);
>> cacheConfiguration.setCacheWriterFactory(noOpCacheWriterFactory);
>> cacheConfiguration.setWriteBehindBatchSize(1);
>>
>>
>> try (Transaction transaction = ignite.transactions().txStart()) {
>>     cache.put(1, 1); // will be flushed here
>>     cache.put(2, 2);
>>
>>     transaction.rollback();
>> }
>>
>>
>> Does not matter if transaction was not completed or rollback, dirty
>> records are flushed through CacheWriter and persistent storage will
>> contains inconsistent data.
>>
>> Expected behaviour: only committed data must be flushed
>>
>>
>> With best regards
>> Alisher Alimov
>> alimovalis...@gmail.com
>>
>>
>>
>>
>>


-- 
Vladislav Pyatkov

Reply via email to