Class ReorderingConcurrentResultBuffer

java.lang.Object
io.nosqlbench.engine.api.activityapi.cyclelog.outputs.ReorderingConcurrentResultBuffer
All Implemented Interfaces:
CanFilterResultValue, Output, AutoCloseable

public class ReorderingConcurrentResultBuffer extends Object implements Output, CanFilterResultValue
This will implement a result buffer that puts cycles in order when possible, according to a sliding window.
  • Constructor Details

    • ReorderingConcurrentResultBuffer

      public ReorderingConcurrentResultBuffer(Output downstream)
    • ReorderingConcurrentResultBuffer

      public ReorderingConcurrentResultBuffer(Output downstream, int threshold)
  • Method Details

    • onCycleResult

      public boolean onCycleResult(long completedCycle, int result)
      Description copied from interface: Output
      Mark the result of the numbered cycle with an integer value. The meaning of the value provided is contextual to the way it is used. (Each process will have its own status tables, etc.)
      Specified by:
      onCycleResult in interface Output
      Parameters:
      completedCycle - The cycle number being marked.
      result - the result ordinal
      Returns:
      true on success, false if the marking should be retried differently
    • onCycleResultSegment

      public void onCycleResultSegment(CycleResultsSegment segment)
      Specified by:
      onCycleResultSegment in interface Output
    • close

      public void close() throws Exception
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Output
      Throws:
      Exception
    • setFilter

      public void setFilter(Predicate<ResultReadable> filter)
      Specified by:
      setFilter in interface CanFilterResultValue