Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The currently active controller will monitor the offset of the latest snapshot made by all replicas, including itself.  The snapshotting state of each node is considered soft state: it is not persisted anywhere in the log, but purely communicated by heartbeats and stored in memory by the active controller.

When the active controller decides that a standby controller should start a snapshot, it will communicate that information in its response to the periodic heartbeat sent by that node.  Each snapshot will be of a consistent point in time.  Because the snapshots are centrally coordinated by the active controller, we can avoid initiating more than one snapshot at once.

Broker Registration and State Management

...

As always with enums, the UNKNOWN state is used only to translate values that our software is too old to understand.

The controller will return NOT_CONTROLLER if it is not active.  Brokers will always return NOT_CONTROLLER for these RPCs.

ControllerHeartbeat

The controllers periodically send out a heartbeat request to the active controller.

...

languagejs

...

The controller will return NOT_CONTROLLER if it is not active.  Brokers will always return NOT_CONTROLLER for these RPCs.

...