Are there some different between the IgniteCache two replace methods?
In my test:
If I call the replace(key,newVal),it's ok.
but if I call replace(key,oldVal,newVal) ,there is an exception throws.
org.apache.ignite.cache.CachePartialUpdateException: Failed to update keys
(retry update if possible).:
[542c87f7-1972-4682-9ae9-5fd603a33cd3:6b90e675-c55d-4734-9de7-44301670f64e]
It's the config:
<bean
class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="UserInfoCache"/>
<property name="cacheMode" value="PARTITIONED"/>
<property name="backups" value="1"/>
<property name="atomicityMode" value="ATOMIC"/>
<property name="atomicWriteOrderMode" value="PRIMARY"/>
<property name="memoryMode" value="ONHEAP_TIERED"/>
<property name="offHeapMaxMemory" value="#{1 * 1024L * 1024L
* 1024L}"/>
<property name="SqlOnheapRowCacheSize" value="100000"/>
<property name="queryEntities">
<list>
<bean class="org.apache.ignite.cache.QueryEntity">
<property name="keyType" value="java.lang.String"/>
<property name="valueType"
value="com.tvm.db.tables.pojos.Userinfo"/>
<property name="fields">
<map>
<entry key="id" value="java.lang.String"/>
<entry key="openid" value="java.lang.String"/>
<entry key="yyyappid" value="java.lang.String"/>
<entry key="virtualcurrency"
value="java.lang.Long"/>
</map>
</property>
<property name="indexes">
<bean class="org.apache.ignite.cache.QueryIndex">
<constructor-arg>
<list>
<value>openid</value>
<value>yyyappid</value>
<value>virtualcurrency</value>
</list>
</constructor-arg>
<constructor-arg value="SORTED"/>
</bean>
</property>
</bean>
</list>
</property>
<property name="evictionPolicy">
<bean
class="org.apache.ignite.cache.eviction.lru.LruEvictionPolicy">
<property name="maxSize" value="1000000"/>
</bean>
</property>
</bean>
Is there something wrong?