Несоответствие режима атомарности кеша Apache Ignite - PullRequest
0 голосов
/ 22 марта 2019

После создания кеша вот так

CacheConfiguration<String, String> cacheCfg = new CacheConfiguration<>("cache");
cacheCfg.setCacheMode(CacheMode.REPLICATED);
cacheCfg.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL);
igniteCfg.setCacheConfiguration(cacheCfg);
Ignite ignite = Ignition.start(cfg);

ignite.getOrCreateCache(cacheCfg)

Исключение составляют:

Caused by: org.apache.ignite.IgniteCheckedException: Cache atomicity mode mismatch (fix cache atomicity mode in cache configuration or set -DIGNITE_SKIP_CONFIGURATION_CONSISTENCY_CHECK=true system property) [cacheName=xac-banking-accounts-warmup-cache, localAtomicityMode=TRANSACTIONAL, remoteAtomicityMode=ATOMIC, rmtNodeId=8a8da4fb-d561-4e10-8b67-1b5c8b9d941d]

В режиме отладки я обнаружил в коде наборы конфигурации:

  1. GridCacheAttributes rmtAttr
  2. GridCacheAttributes locAttr

Так что я думаю, что я должен быть в состоянии настроить кэш rmt (удаленный) но я не могу найти как или где.

Известны ли вам другие способы настройки удаленного кэша?

1 Ответ

0 голосов
/ 22 марта 2019

К сожалению, вы не можете изменить режим атомарности после создания кеша.Ваша конфигурация должна быть такой же, как и на удаленном узле.

С другой стороны, если вы пытаетесь изменить тип, вам придется создать новый кеш с новой конфигурацией и скопироватьданные окончены.(Что не идеально, но именно так оно и работает в настоящее время.)

...