[
https://issues.jboss.org/browse/ISPN-2198?page=com.atlassian.jira.plugin....
]
Dan Berindei commented on ISPN-2198:
------------------------------------
[~rvansa] could it be that this test was using the same DB table to store the cache
entries for all the nodes? The configuration seems to suggest that, although if that was
the case I would have expected primary key violations even state transfer started.
Cluster with non-shared JDBC cache store has too much entries after
node failure
--------------------------------------------------------------------------------
Key: ISPN-2198
URL:
https://issues.jboss.org/browse/ISPN-2198
Project: Infinispan
Issue Type: Feature Request
Components: Loaders and Stores
Affects Versions: 5.1.5.FINAL
Reporter: Radim Vansa
Attachments: cache_entries.csv, logs.zip, sfout.txt
In resilience test with 4-node cluster where one node is killed a weird situation
appears. Before the node kill have this number of entries:
210602;215820;209400;203038 = 838860 entries
After the kill the number of entries changes for a while:
210602;null;209400;203038
250602;null;269400;243038
290602;null;269400;273038
300602;null;289400;293038
300602;null;289400;293038
321218;null;296035;293038
But then it stabilizes on
326899;null;305039;314165 = 946103 entries
When the node02 is restarted it complains about duplicit entries:
ERROR [org.infinispan.loaders.jdbc.stringbased.JdbcStringBasedCacheStore] (OOB-124,null)
ISPN008024: Error while storing string key to database; key: '8Az4Ia2V5NzYzNDI=',
buffer size of value: 1050 bytes:
com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate
entry '?8Az4Ia2V5NzYzNDI=' for key 'PRIMARY'
Is this a bug or wrong configuration?
Here is an excerpt from configuration (sorry for no formatting):
<distributed-cache batching="false" indexing="NONE"
l1-lifespan="0" mode="SYNC" name="memcachedCache"
owners="2" remote-timeout="60000" start="EAGER"
virtual-nodes="512">
<locking acquire-timeout="3000" concurrency-level="1000"
isolation="REPEATABLE_READ" striping="false"/>
<transaction mode="NONE"/>
<state-transfer enabled="true" timeout="600000"/>
<eviction max-entries="-1" strategy="NONE"/>
<string-keyed-jdbc-store datasource="java:jboss/datasources/JdbcDS"
passivation="false" preload="false" purge="true"
shared="false">
<property name="databaseType">MYSQL</property>
<string-keyed-table prefix="node01">
<id-column name="id" type="VARCHAR(100)"/>
<data-column name="value" type="BLOB(1200)"/>
</string-keyed-table>
</string-keyed-jdbc-store>
</distributed-cache>
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)