* Upgraded to Infinispan 5.2.0.Beta3.
* Used a workaround to apply global statistics configuration.
* Infinispan 5.1.x compatibility is still required, which is why a CI
job will be created to verify it works fine.
* Use an Infinispan cache to maintain pending puts, which avoids
the need to control it's memory consumption in the critical path
of putFromLoad.
* This cache is shared by all regions, and it's configured with
aggressive expiration settings to avoid piling up pending put
operations.
* Added a 2LC stress test that tests behaivour and performance
of 2LC under multiple situations, such as entity inserts, updates,
find via PK, find via query and deletes.
* Some other minor performance enhancements, such as avoiding
classloader aware cache wrapper if using 2LC locally.
* Remove cache adapter to reduce construction of useless objects.
* Cache flagged caches in order to avoid recomputing decorated
caches all the time, which reduces memory consumption.
* Skip locking for timestamp updates and separate timestamp region
implementations for local vs clustered scenarios.
putFromLoad now checks for minimalPuts to verify whether the entry
is already present in the cache. By doing this, Hibernate stats
appear more precise since putForExternalReads that are no-op because
the cache already contains the entry are not counted as puts. This
avoids confusion amongst users. This should be reverted to checking
PFER's return value when https://issues.jboss.org/browse/ISPN-1986
has been implemented.
Adds NaturalIdRegion to RegionFactory
Adds creation of NaturalIdRegions to SessionFactoryImpl setup
Basic copy of collection cache region behavior for first pass at naturalId region support in ehcache
By doing this, discovery of nodes is not timed and instead is done
in-memory which is much more reliable from a testing perspective.
Due to timing issues, some tests would randomly fail because the
cluster did not form in time, so changing to this JGroups stack for
testing solves random test failures due to invalidation messages
not being sent around.
* Switch to autoCommit=false so that unnecessary transactions
are not created.
* Mark timestamps cache explicitly non-transactional.
* Move away from using caches as a way to send evict all
notifications. Instead, use custom commands provided by Infinispan.
* Get rid of the JDBC transaction test because it does not make
sense configuring JDBC transactions with Infinispan 2LC.
* Made the configuration file explicitly define optimistic as locking
mode.
* Make sure a transaction manager that hooks to Hibernate's TM
is configured.