Skip to main content

ScriptedCoordinator

Struct ScriptedCoordinator 

Source
pub struct ScriptedCoordinator { /* private fields */ }
👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Expand description

A SplitCoordinator whose events and outcomes are scripted by the paired CoordinatorScript. Build both with scripted_coordinator.

Trait Implementations§

Source§

impl Debug for ScriptedCoordinator

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl SplitCoordinator for ScriptedCoordinator

Source§

fn start( &mut self, planner: Box<dyn SplitPlanner>, ) -> Result<(), CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Join the job: verify the fingerprint, hand over this worker’s planner (used only if and while this instance is elected leader), and start the backend’s claim and renewal machinery. Called exactly once, before any other method.
Source§

fn set_waker(&mut self, waker: ControlWaker)

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Hand the backend the handle it signals when it has events to deliver. Called once, before start. Read more
Source§

fn poll(&mut self) -> Result<Vec<CoordinationEvent>, CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Ownership and job-state changes since the last call. Must not block; return whatever is pending, including nothing. The driver parks on the ControlWaker instead.
Source§

fn commit( &mut self, split: &SplitId, progress: &SplitProgress, ) -> Result<(), CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Fenced durable commit of one owned split’s progress. Ok means durable. Fenced means the split is no longer owned and nothing was written; stop the split and do not retry the write. Retryable means the write may or may not have been stored; either outcome is safe because a commit carries only acknowledged progress, and re-committing the merged progress later is idempotent. Read more
Source§

fn commit_final( &mut self, commits: &[(SplitId, SplitProgress)], ) -> Vec<Result<(), CoordinationError>>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

The last commit of a stop: one result per entry, in order, each with the meaning of a commit result. Read more
Source§

fn fail( &mut self, split: &SplitId, epoch: LeaseEpoch, reason: &str, ) -> Result<(), CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Report an owned split as unprocessable by this tenancy: consumes one delivery attempt and releases it for another worker to retry. At the backend’s attempt cap the split is quarantined instead (CoordinationEvent::Quarantined). Use for poison input. For a transient local problem, release consumes no delivery attempts but may permanently leave the fleet when the last held split is handed back. Read more
Source§

fn release(&mut self, splits: &[SplitId]) -> Result<(), CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Voluntarily hand back owned splits so peers claim them without waiting out a lease. Consumes no delivery attempts. Best-effort and idempotent; splits not released expire. Shutdown uses depart. Read more
Source§

fn depart(&mut self, held: &[SplitId]) -> Result<(), CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Leave the job for good: hand back every held split, and any role or membership the backend keeps, so peers take over without waiting out a lease. The last call on a coordinator. Read more
Source§

fn set_stop(&mut self, stop: StopSignal)

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Hand the backend the run’s stop. While it is set, a command waiting on the store may return Retryable early and still land afterwards; commit_final ignores it. A coordinator that wraps another forwards it. The default ignores it.
Source§

fn release_drained( &mut self, splits: &[SplitId], ) -> Result<(), CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Release splits given up through a cooperative revocation. The owner has drained each split, committed its tail, and is handing it back. Semantically a release (attempt-free, best-effort, idempotent), but distinguished so a revocation-aware backend can record the drain as having completed and never mistake a single-split revocation for a departure from the fleet. Read more
Source§

fn decline_revoke(&mut self, _split: &SplitId) -> Result<(), CoordinationError>

👎Deprecated since 0.3.0:

removed in v0.4.0, where a work feed replaces split coordination; see https://github.com/spate-etl/spate/issues/1088

Decline a RevokeRequested the embedder cannot serve, because the source refused to stop the split’s intake or the split is not in a drainable state. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<A, B, T> HttpServerConnExec<A, B> for T
where B: Body,

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more