voldemort.server.scheduler.slop
Class SlopPusherJob

java.lang.Object
  extended by voldemort.server.scheduler.slop.SlopPusherJob
Direct Known Subclasses:
BlockingSlopPusherJob, StreamingSlopPusherJob

public abstract class SlopPusherJob
extends java.lang.Object

TODO there is potentially lot more the two slop pushers can share.


Field Summary
protected  FailureDetector failureDetector
           
protected  MetadataStore metadataStore
           
protected  ScanPermitWrapper repairPermits
           
protected  StoreRepository storeRepo
           
protected  VoldemortConfig voldemortConfig
           
 
Method Summary
abstract  org.apache.log4j.Logger getLogger()
           
protected  void handleDeadSlop(SlopStorageEngine slopStorageEngine, Pair<ByteArray,Versioned<Slop>> keyAndVal)
          Handle slop for nodes that are no longer part of the cluster.
protected  boolean isSlopDead(Cluster cluster, java.util.Set<java.lang.String> storeNames, Slop slop)
          A slop is dead if the destination node or the store does not exist anymore on the cluster.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

storeRepo

protected final StoreRepository storeRepo

metadataStore

protected final MetadataStore metadataStore

failureDetector

protected final FailureDetector failureDetector

repairPermits

protected final ScanPermitWrapper repairPermits

voldemortConfig

protected final VoldemortConfig voldemortConfig
Method Detail

isSlopDead

protected boolean isSlopDead(Cluster cluster,
                             java.util.Set<java.lang.String> storeNames,
                             Slop slop)
A slop is dead if the destination node or the store does not exist anymore on the cluster.

Parameters:
slop -
Returns:

handleDeadSlop

protected void handleDeadSlop(SlopStorageEngine slopStorageEngine,
                              Pair<ByteArray,Versioned<Slop>> keyAndVal)
Handle slop for nodes that are no longer part of the cluster. It may not always be the case. For example, shrinking a zone or deleting a store.


getLogger

public abstract org.apache.log4j.Logger getLogger()


Jay Kreps, Roshan Sumbaly, Alex Feinberg, Bhupesh Bansal, Lei Gao, Chinmay Soman, Vinoth Chandar, Zhongjie Wu