Object

com.comcast.xfinity.sirius.api.impl.paxos

PaxosMessages

Related Doc: package paxos

Permalink

object PaxosMessages

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PaxosMessages
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class Adopted(ballotNum: Ballot, pvals: Set[PValue]) extends PaxosMessage with Product with Serializable

    Permalink
  2. case class Command(client: ActorRef, ts: Long, op: NonCommutativeSiriusRequest) extends PaxosMessage with Product with Serializable

    Permalink
  3. case class Decision(slot: Long, command: Command) extends PaxosMessage with Product with Serializable

    Permalink
  4. case class DecisionHint(decision: Long) extends PaxosMessage with Product with Serializable

    Permalink

    A Hint about the last Decision executed by the Sirius System.

    A Hint about the last Decision executed by the Sirius System. Used to reduce the amount of information the Acceptor sends in Phase1B message. Also used by the Leader to not repropose already decided proposals.

    decision

    last decision executed

  5. case class PValue(ballot: Ballot, slotNum: Long, proposedCommand: Command) extends PaxosMessage with Product with Serializable

    Permalink
  6. sealed trait PaxosMessage extends AnyRef

    Permalink
  7. case class Phase1A(from: ActorRef, ballot: Ballot, replyAs: ActorRef, latestDecidedSlot: Long) extends PaxosMessage with Product with Serializable

    Permalink

    Message used by a Scout to advocate a Ballot

    Message used by a Scout to advocate a Ballot

    from

    The ActorRef sending this request, this will always be the sending Scout, and most likely always be the same as the sender of this message. We include this param for similarity to the algorithm described in Paxos Made Moderately Complex and for flexibility

    ballot

    The Ballot which we are trying to make active

    replyAs

    An ActorRef that the receiving acceptor must supply in the from field of the Phase1B message, allowing us to cleanly uniquely identify a node

    latestDecidedSlot

    The lastest decided slot that we know about, used to reduce number of accepted decisions sent in Phase1B

    See also

    DecisionHint

  8. case class Phase1B(from: ActorRef, ballot: Ballot, r: Set[PValue]) extends PaxosMessage with Product with Serializable

    Permalink

    Message sent back to a Scout from an Acceptor during Ballot negotiation

    Message sent back to a Scout from an Acceptor during Ballot negotiation

    from

    The ActorRef identifying the sending acceptor, this should always be set to the value supplied in the replyAs field of Phase1A messages, such that the requesting Scout can properly identify the source of the message

    ballot

    The sending Acceptor's current Ballot

    r

    the set of PValues this Acceptor has retained TODO: this name could be better

  9. case class Phase2A(from: ActorRef, pvalue: PValue, replyAs: ActorRef) extends PaxosMessage with Product with Serializable

    Permalink

    Message used by commander to advocate a PValue (used to find a decision for a Proposal)

    Message used by commander to advocate a PValue (used to find a decision for a Proposal)

    from

    The ActorRef sending this request, this will always be the sending Commander, and most likely always be the same as the sender of this message. We include this param for similarity to the algorithm described in Paxos Made Moderately Complex and for flexibility

    pvalue

    The PValue for which the initiating commander is trying to have the cluster arrive at a decision

    replyAs

    An ActorRef that the receiving acceptor must supply in the from field of the Phase2B message, allowing us to cleanly uniquely identify a node

  10. case class Phase2B(acceptor: ActorRef, ballot: Ballot) extends PaxosMessage with Product with Serializable

    Permalink

    Message sent back to a Commander from an Acceptor when deciding on a PValue

    Message sent back to a Commander from an Acceptor when deciding on a PValue

    acceptor

    The ActorRef identifying the sending acceptor, this should always be set to the value supplied in the replyAs field of Phase2A messages, such that the requesting Scout can properly identify the source of the message

    ballot

    The sending Acceptor's current Ballot

  11. case class Preempted(picked: Ballot) extends PaxosMessage with Product with Serializable

    Permalink
  12. case class Propose(slot: Long, command: Command) extends PaxosMessage with Product with Serializable

    Permalink
  13. case class Request(command: Command) extends PaxosMessage with Product with Serializable

    Permalink
  14. case class Slot(num: Long, command: Command) extends PaxosMessage with Product with Serializable

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object ScoutTimeout extends PaxosMessage with Product with Serializable

    Permalink
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  17. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  18. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped