Class BulkOperationCleanupAction

  • All Implemented Interfaces:
    Serializable, Executable

    public class BulkOperationCleanupAction
    extends Object
    implements Executable, Serializable
    An ActionQueue Executable for ensuring shared cache cleanup in relation to performed bulk HQL queries.
    See Also:
    Serialized Form
    Implementation Note:
    Currently this executes for INSERT queries as well as UPDATE and DELETE queries. For INSERT it is really not needed as we'd have no invalid entity/collection data to clean up (we'd still need to invalidate the appropriate update-timestamps regions) as a result of this query.
    • Constructor Detail

      • BulkOperationCleanupAction

        public BulkOperationCleanupAction​(SharedSessionContractImplementor session,
                                          EntityPersister... affectedQueryables)
        Constructs an action to cleanup "affected cache regions" based on the affected entity persisters. The affected regions are defined as the region (if any) of the entity persisters themselves, plus the collection regions for any collection in which those entity persisters participate as elements/keys/etc.
        Parameters:
        session - The session to which this request is tied.
        affectedQueryables - The affected entity persisters.
      • BulkOperationCleanupAction

        public BulkOperationCleanupAction​(SharedSessionContractImplementor session,
                                          Set<String> tableSpaces)
        Constructs an action to cleanup "affected cache regions" based on a set of affected table spaces. This differs from BulkOperationCleanupAction(SharedSessionContractImplementor, EntityPersister[]) in that here we have the affected table names. From those we deduce the entity persisters which are affected based on the defined table spaces. Finally, we determine the affected collection regions based on any collections in which those entity persisters participate as elements/keys/etc.
        Parameters:
        session - The session to which this request is tied.
        tableSpaces - The table spaces.