voldemort.server.protocol.admin
Class PartitionScanFetchKeysRequestHandler

java.lang.Object
  extended by voldemort.server.protocol.admin.FetchStreamRequestHandler
      extended by voldemort.server.protocol.admin.PartitionScanFetchStreamRequestHandler
          extended by voldemort.server.protocol.admin.PartitionScanFetchKeysRequestHandler
All Implemented Interfaces:
StreamRequestHandler

public class PartitionScanFetchKeysRequestHandler
extends PartitionScanFetchStreamRequestHandler

Fetches keys using an efficient partition scan. Of course, only works if isPartitionScanSupported() is true for the storage engine to be scanned..


Nested Class Summary
 
Nested classes/interfaces inherited from interface voldemort.server.protocol.StreamRequestHandler
StreamRequestHandler.StreamRequestDirection, StreamRequestHandler.StreamRequestHandlerState
 
Field Summary
protected  ClosableIterator<ByteArray> keysPartitionIterator
           
 
Fields inherited from class voldemort.server.protocol.admin.PartitionScanFetchStreamRequestHandler
currentIndex, currentPartition, currentPartitionFetched, fetchedPartitions, partitionList
 
Fields inherited from class voldemort.server.protocol.admin.FetchStreamRequestHandler
errorCodeMapper, fetched, fetchOrphaned, filter, initialCluster, isJmxEnabled, logger, nodeId, operation, partitionIds, recordsPerPartition, request, scanned, startTimeMs, storageEngine, storeDef, storeInstance, streamStats, throttler
 
Fields inherited from interface voldemort.server.protocol.StreamRequestHandler
STAT_RECORDS_INTERVAL
 
Constructor Summary
PartitionScanFetchKeysRequestHandler(VAdminProto.FetchPartitionEntriesRequest request, MetadataStore metadataStore, ErrorCodeMapper errorCodeMapper, VoldemortConfig voldemortConfig, StoreRepository storeRepository, NetworkClassLoader networkClassLoader)
           
 
Method Summary
 void close(java.io.DataOutputStream outputStream)
           
 StreamRequestHandler.StreamRequestHandlerState handleRequest(java.io.DataInputStream inputStream, java.io.DataOutputStream outputStream)
          Handles a "segment" of a streaming request.
 
Methods inherited from class voldemort.server.protocol.admin.PartitionScanFetchStreamRequestHandler
completedFetchingCurrentPartition, fetchedEnoughForCurrentPartition, recordFetched, statusInfoMessage
 
Methods inherited from class voldemort.server.protocol.admin.FetchStreamRequestHandler
accountForScanProgress, getDirection, handleError, progressInfoMessage, reportStorageOpTime, sendMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

keysPartitionIterator

protected ClosableIterator<ByteArray> keysPartitionIterator
Constructor Detail

PartitionScanFetchKeysRequestHandler

public PartitionScanFetchKeysRequestHandler(VAdminProto.FetchPartitionEntriesRequest request,
                                            MetadataStore metadataStore,
                                            ErrorCodeMapper errorCodeMapper,
                                            VoldemortConfig voldemortConfig,
                                            StoreRepository storeRepository,
                                            NetworkClassLoader networkClassLoader)
Method Detail

handleRequest

public StreamRequestHandler.StreamRequestHandlerState handleRequest(java.io.DataInputStream inputStream,
                                                                    java.io.DataOutputStream outputStream)
                                                             throws java.io.IOException
Description copied from interface: StreamRequestHandler
Handles a "segment" of a streaming request.

Returns:
StreamRequestHandler.StreamRequestHandlerState
Throws:
java.io.IOException

close

public final void close(java.io.DataOutputStream outputStream)
                 throws java.io.IOException
Specified by:
close in interface StreamRequestHandler
Overrides:
close in class FetchStreamRequestHandler
Throws:
java.io.IOException


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