Commit Graph

187 Commits

Author SHA1 Message Date
Radim Vansa b9a2128709 HHH-10083 Support replicated and distributed caches 2015-09-16 15:09:48 +02:00
Radim Vansa 64f91f1a15 HHH-10030 Add read-write cache concurrency strategy to Infinispan 2LC
* AccessType.READ_WRITE is now supported cache concurrency strategy
* Added checks that we're caching in local or invalidation cache (distributed and replicated cache does not work ATM)
* Refactored test-suite: Running on both transactional and read-write caches (these should yield the same results)
** CustomParemeterized runner is used for that
** Moved all entities used in functional tests to one package
** Removed already disabled tests related to class loaders (not needed since Infinispan 5.1)

(cherry picked from commit 3689924d74)
2015-09-03 08:15:44 -05:00
Radim Vansa 92e328be0d HHH-10057 hibernate-infinispan incompatible with Infinispan 8.0.0.CR1
* ISPN-5609 changed InvalidateCommand constructors: used reflection to work around that; now should work with 8.0.0.CR1
* renamed BeginInvalidationCommand.getLockOwner to getSessionTransactionId() to prevent further conflicts
* added commands tests

(cherry picked from commit 64137c3619)
2015-09-01 12:02:15 -05:00
Radim Vansa 2057bb3f1d HHH-10023 Make hibernate-infinispan compiled with Infinispan 7.x but runnable with Infinispan 8.x
* workaround for ISPN-5676
* fix for ClassCastException in ClusteredTimestampsRegionImpl
* minor fixes in the testsuite
2015-08-20 13:37:37 +02:00
Steve Ebersole 11b358305a HHH-10040 - Fix problem with incomplete Iterator impl 2015-08-19 12:21:57 -05:00
Radim Vansa 6191489ca3 HHH-9928 Pending put leaks when the entity is not found in DB 2015-08-12 10:55:49 +02:00
Radim Vansa 93d39fa470 HHH-9868, HHH-9881 Must not write into non-transactional caches during transactional write
* The write can only invalidate (remove) the entry and block further PFERs of that entry
* After successful DB update, if there have not been any concurrent updates the value can be PFERed into the cache
2015-08-12 10:39:22 +02:00
Radim Vansa 19c14cee9a HHH-9868, HHH-9881 Removed references to TransactionManager from PutFromLoadValidator
* Also removed put() instead of PFER() after region invalidation
* Relaxed test that required that session.load() after cache.evictAll() in the same transaction cached the loaded entity
2015-08-12 10:39:21 +02:00
Radim Vansa c8ed5e1bef HHH-9898 Test for correct behaviour of 2LC
* Test is marked as ignored since it is expected to run it only manually
2015-08-12 10:39:21 +02:00
Radim Vansa 984125e87e HHH-9868, HHH-9881 Replaced access to TransactionManager with Session 2015-08-12 10:39:20 +02:00
Radim Vansa 1f24fa6354 HHH-9868, HHH-9881 Implementation for non-transactional caches and non-JTA transactions. 2015-08-12 10:39:19 +02:00
Radim Vansa fa7265ff0e HHH-9881 Pending put needs to be invalidated on update on remote node
* This could lead to performance degradation since new EndInvalidatingCommand
  needs to be send after transaction is committed
2015-08-12 10:39:18 +02:00
Radim Vansa 4b2a78785e HHH-9868 Infinispan 2LC can store stale data
* invalidation blocks putFromLoads until the transaction with invalidation
  is committed
* rewritten the naked puts support: timestamp is stored in the pendingPutMap
  and removal of the record relies on pending puts' idle expiration or
  piggy-backs on release from putFromLoad
2015-08-12 10:39:18 +02:00
Radim Vansa fa8e94071f HHH-9988 Separate transaction manager used for Hibernate and caches 2015-08-12 10:39:17 +02:00
Radim Vansa c952a843fa HHH-10023 Make hibernate-infinispan compiled with Infinispan 7.x but runnable with Infinispan 8.x 2015-08-12 10:39:16 +02:00
Sanne Grinovero bd6bb7b841 HHH-10021 Allow the exact version of Infinispan to be used for testing to be overriden from commandline 2015-08-06 10:55:52 +01:00
Sanne Grinovero 8c5c291bee HHH-10021 Allow easy testing of hibernate-infinispan against Infinispan 7 or 8 2015-08-06 10:33:39 +01:00
Andrea Boriero 4da260b3be HHH-9990 - Enabled batched updates for versioned data by default 2015-08-05 11:27:18 +01:00
Radim Vansa ab4c6841df HHH-10005 Query in context needs precedence over query in cache 2015-07-30 18:31:26 +02:00
Sanne Grinovero 44e7171edd HHH-10001 Make the testsuite compatible with Infinispan 8 2015-07-30 14:51:25 +01:00
Paul Ferraro 60c109c1a4 HHH-9999 Fix use of deprecated API
This fixes compatibility with Infinispan 8.0
2015-07-29 16:06:44 -04:00
Radim Vansa 0cb00db3b9 HHH-7898 Regression on org.hibernate.cache.infinispan.query.QueryResultsRegionImpl.put(Object, Object)
* Moved query cache update to second phase of transaction commit
* Query caches are now recommended to be non-transactional (transactional ones will be slower)
2015-07-28 18:02:17 +01:00
Radim Vansa 4fd7680191 HHH-9977 Consider options for passing Session to caching SPI calls
* Passing SessionImplementor to all the calls executed in transactional context
2015-07-28 17:56:55 +01:00
Radim Vansa 2f1b67b03f HHH-9843 Use optimized cache key implementation in Infinispan 2LC
* When multi-tenancy is not used, entity's @Id can be used as key to the cache
* Added Type to CacheDataDescription (in SPI), later used for container key equivalence
* Introduced CacheKeysFactory to SPI
* Pending puts cache is now per region - this is necessary as we need to use custom key equivalence
2015-07-06 11:40:17 -05:00
Radim Vansa bcf38a02b5 HHH-9800 Numerous hibernate-infinispan tests continue to fail transiently
The original cause was JGRP-1931, but this replaces fixed delays with eventual asserts (with 10 seconds timeouts).
2015-07-06 11:25:25 -05:00
Radim Vansa cffe71aeba HHH-9840 Change all kinds of CacheKey contract to a raw Object
* Replaced all CacheKey with Object
* Because of statistics, added unwrap operation to all AccessStrategies
2015-07-01 23:14:13 +01:00
Sanne Grinovero 16ae00a53a HHH-9840 Allow 2nd level cache implementations to customize the various key implementations 2015-07-01 20:42:51 +01:00
Sanne Grinovero 1e54ee3dc1 HHH-9874 Do not leak the configuration resource stream 2015-06-19 18:41:00 +01:00
Sanne Grinovero f593a9c14a HHH-9874 Perform Infinispan configuration parsing using the classloader of the cache integration module 2015-06-19 18:41:00 +01:00
Sanne Grinovero 3d27b29468 HHH-9874 Improve resource lookup for the Infinispan configuration resources 2015-06-19 17:38:22 +01:00
Steve Ebersole 9e063ffa25 HHH-9837 - Remove reliance during annotation binding on org.hibernate.internal.util.ClassLoaderHelper
HHH-9841 - Redesign org.hibernate.property.PropertyAccessorFactory
2015-06-04 14:12:17 -05:00
Andrea Boriero 6417a469f9 HHH-9695 - Fix merge conflicts and checkStyle failure 2015-05-27 19:59:34 +01:00
rvansa ccc83405c4 HHH-9695 Use non-transactional cache for immutable entities 2015-05-27 19:20:28 +01:00
rvansa d46bfb3d80 HHH-9787 Remove outdated Infinispan configuration elements 2015-05-19 13:35:34 +02:00
Steve Ebersole bd256e4783 HHH-9803 - Checkstyle fix ups - headers 2015-05-18 23:25:14 -05:00
Steve Ebersole 611f8a0e1c HHH-9803 - Checkstyle fix ups 2015-05-18 13:35:27 -05:00
Steve Ebersole 7308e14fed HHH-9803 - Checkstyle fix ups 2015-05-15 18:07:07 -05:00
Steve Ebersole a50e5f3623 HHH-9800 - Numerous hibernate-infinispan tests continue to fail transiently 2015-05-15 08:49:46 -05:00
Gail Badner df898f3fbc HHH-9796 : Allow running hibernate-infinspan tests using Infinispan configuration specified by hibernate.cache.infinispan.cfg 2015-05-13 14:50:05 -07:00
Galder Zamarreño f3399926db HHH-9781 Update XML schema to Infinispan 7.2 2015-05-12 10:06:37 +02:00
Galder Zamarreño f8186e10c2 HHH-9776 elementCountInMemory should be local
* By default Cache.size() is now cluster-wide and hence to calculate
elementCountInMemory, local flag needs to be passed in (as well as
skip cache load in case there's a remote store plugged into it).
2015-05-08 17:43:40 +02:00
Galder Zamarreño 37494f4a9f HHH-9781 Update to Infinispan 7.2.1.Final
* The upgrade caused some tests that verified number of cached elements
in memory to fail. The cause for this was the change in clear()
operation which now is non-transactional, hence each element needs to
be removed individually.
2015-05-08 17:43:39 +02:00
Steve Ebersole da1fcbbfb7 HHH-9762 - Complete deprecation of Settings contract 2015-05-05 18:00:37 -05:00
Andrea Boriero b476094d43 HHH-9747 - Import initial reworking of transaction handling (based on JdbcSession work) 2015-04-24 10:58:08 -05:00
Steve Ebersole d2c50f16f2 HHH-9727 - Slight redesign to bootstrapping APIs to allow for OGM bootstrapping 2015-04-21 13:49:06 -05:00
Steve Ebersole e8af41637f HHH-9727 - Slight redesign to bootstrapping APIs to allow for OGM bootstrapping 2015-04-21 11:56:06 -05:00
Steve Ebersole 2c968538a5 HHH-9728 - Audit Settings to decide what should become a SessionFactoryServiceRegistry service 2015-04-16 00:59:10 -05:00
Steve Ebersole 650267077d HHH-9717 - Build script improvements - applied new standalone XJC and AnimalSniffer plugins 2015-04-10 11:58:22 -05:00
Steve Ebersole c11d264743 HHH-9550 - Allow a dialect to specify the level of catalog/schema support 2015-04-07 16:36:29 -05:00
Steve Ebersole 2cff88cac7 Merge pull request #910 from rvansa/HHH-9632_2
HHH-9632 Upgrade to Infinispan 7.1.0.Final
2015-03-20 12:26:16 -05:00