
org.infinispan.statetransfer.CommitManager Maven / Gradle / Ivy
package org.infinispan.statetransfer;
import static org.infinispan.commons.util.Util.toStr;
import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
import org.infinispan.container.DataContainer;
import org.infinispan.container.entries.CacheEntry;
import org.infinispan.context.Flag;
import org.infinispan.factories.annotations.Inject;
import org.infinispan.metadata.Metadata;
import org.infinispan.util.logging.Log;
import org.infinispan.util.logging.LogFactory;
/**
* Keeps track of the keys updated by normal operation and state transfer. Since the command processing happens
* concurrently with the state transfer, it needs to keep track of the keys updated by normal command in order to reject
* the updates from the state transfer. It assumes that the keys from normal operations are most recent thant the ones
* received by state transfer.
*
* @author Pedro Ruivo
* @since 7.0
*/
public class CommitManager {
private static final Log log = LogFactory.getLog(CommitManager.class);
private static final boolean trace = log.isTraceEnabled();
private final ConcurrentMap
© 2015 - 2025 Weber Informatics LLC | Privacy Policy