Package

com.github

trex_paxos

Permalink

package trex_paxos

Visibility
  1. Public
  2. All

Type Members

  1. abstract class BaseDriver extends Actor with ActorLogging

    Permalink

    Driver baseclass logic forwards messages to a trex cluster switching nodes until it finds the leader.

    Driver baseclass logic forwards messages to a trex cluster switching nodes until it finds the leader. The driver coverts the application command value into a byte array ready to journal on the server.

    FIXME we retry on timeout yet we don't know if the command happened on a timeout and whether it is safe to retry we should have a map of what client messages types are known safe to retry (e.g. read-only) and only retry those.

  2. case class Cluster(name: String, folder: String, retained: Int, nodes: Seq[Node]) extends Product with Serializable

    Permalink
  3. class DynamicClusterDriver extends BaseDriver with ActorLogging

    Permalink

    A concrete driver which uses akka.tcp to send messages.

    A concrete driver which uses akka.tcp to send messages. FIXME Note akka documentation says that akka.tcp is not firewall friendly.

  4. case class Node(nodeUniqueId: Int, host: String, clientPort: Int, nodePort: Int) extends Product with Serializable

    Permalink

    FIXME the location visible to the client may be a completely different host/interface so one host and two ports doesnt cut it.

    FIXME the location visible to the client may be a completely different host/interface so one host and two ports doesnt cut it. A node is an immutable addressable process within the cluster. If a process is moved to another location, such that its address changes, it just leave the cluster and rejoin at another address, with a new node membershipId.

    nodeUniqueId

    The unique ID in the cluster for this addressable node. If the process moves host or port a new membershipId must be assigned by having the node leave the cluster and rejoin it.

    host

    The host of the node.

    clientPort

    The client tcp port of the node.

    nodePort

    The intercluster udp port of the node.

  5. trait TrexMembership extends AnyRef

    Permalink

    Cluster membership durable store.

  6. trait TrexRouting extends Actor with ActorLogging

    Permalink
  7. class TypedActorPaxosEndpoint extends PaxosActor

    Permalink
  8. class UdpListener extends Actor with ActorLogging

    Permalink
  9. class UdpSender extends Actor with ActorLogging

    Permalink

Value Members

  1. object BaseDriver

    Permalink
  2. object Cluster extends Serializable

    Permalink
  3. object DynamicClusterDriver

    Permalink
  4. object TrexServer

    Permalink
  5. package internals

    Permalink

Ungrouped