JBossCacheRegions

    This is about JBCACHE-64

     

    Motivation

     

    To be able to configure caches on a per-region basis.

     

    What can be configured per-region?

     

    Currently (2.x) available:

     

    • Eviction policies

    • Class loaders

    • State transfer

    • PojoCache scoping

     

    For JBCACHE-64 (3.0.0)

     

    • Isolation level (see JBossCacheMVCC)

    • Transactional behaviour

      • REQUIRES_NEW, NONE, etc.

    • Replication (SYNC/ASYNC, INVALIDATION, LOCAL)

    • Cache loading

     

    Classes

     

     

    Defining regions

     

    • An Fqn can define a Node which is the root of the region

    • Regions within regions allowed

     

    Configuration

     

    • Each region to have a Configuration, which inherits from it's parent region (if region is within a region) or the cache-wide default (copies it)

    • Some elements may be dynamic

      • If changing on the fly, acquire an exclusive lock on all nodes in the region (and any sub-regions)

      • Update interceptors on all nodes in the region accordingly

      • Release exclusive locks

        • Any eviction policy updates in a region will reset eviction queues!