voldemort.store.routed
Class PipelineRoutedStats

java.lang.Object
  extended by voldemort.store.routed.PipelineRoutedStats
Direct Known Subclasses:
CoordinatorErrorStats

public class PipelineRoutedStats
extends java.lang.Object

Tracks all the exceptions we see, down at the routing layer also including ones that will be eventually propagated up to the client from the routing layer


Field Summary
protected  java.util.concurrent.atomic.AtomicLong benignExceptionCount
           
protected  java.util.concurrent.ConcurrentHashMap<java.lang.Class<? extends java.lang.Exception>,java.util.concurrent.atomic.AtomicLong> errCountMap
           
protected  java.util.concurrent.atomic.AtomicLong severeExceptionCount
           
 
Constructor Summary
protected PipelineRoutedStats()
           
 
Method Summary
 java.lang.String getExceptionCountsAsString()
           
 long getNumBenignExceptions()
           
 long getNumInsufficientOperationalNodesExceptions()
           
 long getNumInsufficientZoneResponsesExceptions()
           
 long getNumInvalidMetadataExceptions()
           
 long getNumObsoleteVersionExceptions()
           
 long getNumSevereExceptions()
           
 long getNumStoreTimeoutExceptions()
           
 long getNumUnreachableStoreExceptions()
           
 boolean isSevere(java.lang.Exception ve)
           
 void reportException(java.lang.Exception e)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

errCountMap

protected java.util.concurrent.ConcurrentHashMap<java.lang.Class<? extends java.lang.Exception>,java.util.concurrent.atomic.AtomicLong> errCountMap

severeExceptionCount

protected java.util.concurrent.atomic.AtomicLong severeExceptionCount

benignExceptionCount

protected java.util.concurrent.atomic.AtomicLong benignExceptionCount
Constructor Detail

PipelineRoutedStats

protected PipelineRoutedStats()
Method Detail

getNumSevereExceptions

public long getNumSevereExceptions()

getNumBenignExceptions

public long getNumBenignExceptions()

getNumInsufficientOperationalNodesExceptions

public long getNumInsufficientOperationalNodesExceptions()

getNumInsufficientZoneResponsesExceptions

public long getNumInsufficientZoneResponsesExceptions()

getNumInvalidMetadataExceptions

public long getNumInvalidMetadataExceptions()

getNumUnreachableStoreExceptions

public long getNumUnreachableStoreExceptions()

getNumStoreTimeoutExceptions

public long getNumStoreTimeoutExceptions()

getNumObsoleteVersionExceptions

public long getNumObsoleteVersionExceptions()

getExceptionCountsAsString

public java.lang.String getExceptionCountsAsString()

reportException

public void reportException(java.lang.Exception e)

isSevere

public boolean isSevere(java.lang.Exception ve)


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