Class CSTRequestF1

  • All Implemented Interfaces:
    java.io.Serializable

    public class CSTRequestF1
    extends CSTRequest
    This class is used to define the roles in the Collaborative State Transfer protocol. The recovering replica uses this class to define which replicas should send the checkpoint, log of operations lower and higher portions
    See Also:
    Serialized Form
    • Constructor Detail

      • CSTRequestF1

        public CSTRequestF1​(int cid)
    • Method Detail

      • getLogUpper

        public int getLogUpper()
      • setLogUpper

        public void setLogUpper​(int logUpper)
      • getLogLower

        public int getLogLower()
      • setLogLower

        public void setLogLower​(int logLower)
      • getLogUpperSize

        public int getLogUpperSize()
      • defineReplicas

        public void defineReplicas​(int[] otherReplicas,
                                   int globalCkpPeriod,
                                   int me)
        Define and set the attributes of this CST Request according to the algorithm described in the durability state transfer paper. In summary, the algorithm defines that, in a situation with three seeders, the seeder in the middle (the one that took the checkpoint just after the oldest) must send the checkpoint. The oldest must send the log of the period between the middle checkpoint until the checkpoint of the newest replica. The newest replica must send the log from the begging to the CID requested.
        Specified by:
        defineReplicas in class CSTRequest
      • getAddress

        public java.net.InetSocketAddress getAddress()
      • setAddress

        public void setAddress​(java.net.InetSocketAddress address)
      • getLogLowerSize

        public int getLogLowerSize()