Class Validator

  • All Implemented Interfaces:
    java.lang.Runnable

    public class Validator
    extends java.lang.Object
    implements java.lang.Runnable
    Handles the building of a merkle tree for a column family. Lifecycle: 1. prepare() - Initialize tree with samples. 2. add() - 0 or more times, to add hashes to the tree. 3. complete() - Enqueues any operations that were blocked waiting for a valid tree.
    • Field Detail

      • nowInSec

        public final int nowInSec
      • isIncremental

        public final boolean isIncremental
    • Method Detail

      • add

        public void add​(UnfilteredRowIterator partition)
        Called (in order) for every row present in the CF. Hashes the row, and adds it to the tree being built.
        Parameters:
        partition - Partition to add hash
      • findCorrectRange

        public boolean findCorrectRange​(Token t)
      • complete

        public void complete()
        Registers the newly created tree for rendezvous in Stage.ANTIENTROPY.
      • fail

        public void fail()
        Called when some error during the validation happened. This sends RepairStatus to inform the initiator that the validation has failed. The actual reason for failure should be looked up in the log of the host calling this function.
      • run

        public void run()
        Called after the validation lifecycle to respond with the now valid tree. Runs in Stage.ANTIENTROPY.
        Specified by:
        run in interface java.lang.Runnable