[−][src]Struct declarative_dataflow::server::Server
Server context maintaining globally registered arrangements and input handles.
Fields
config: ConfigServer configuration.
t0: InstantA timer started at the initation of the timely computation (copied from worker).
context: Context<T>Implementation context.
interests: HashMap<String, HashSet<Token>>Mapping from query names to interested client tokens.
tenant_owner: Rc<RefCell<HashMap<Token, u64>>>Mapping from client tokens to the workers managing their connections. Only maintained for clients participating in multi-tenant queries.
probe: ProbeHandle<T>Probe keeping track of overall dataflow progress.
scheduler: Rc<RefCell<Scheduler>>Scheduler managing deferred operator activations.
Methods
impl<T, Token> Server<T, Token> where
T: Timestamp + Lattice + TotalOrder + Default + Sub<Output = T> + From<Time>,
Token: Hash + Eq + Copy, [src]
T: Timestamp + Lattice + TotalOrder + Default + Sub<Output = T> + From<Time>,
Token: Hash + Eq + Copy,
pub fn new(config: Config) -> Self[src]
Creates a new server state from a configuration.
pub fn new_at(config: Config, t0: Instant) -> Self[src]
Creates a new server state from a configuration with an additionally specified beginning of the computation: an instant in relation to which all durations will be measured.
pub fn builtins() -> Vec<Request>[src]
Returns commands to install built-in plans.
pub fn transact(
&mut self,
tx_data: Vec<TxData>,
owner: usize,
worker_index: usize
) -> Result<(), Error>[src]
&mut self,
tx_data: Vec<TxData>,
owner: usize,
worker_index: usize
) -> Result<(), Error>
Handle a Transact request.
pub fn interest<S: Scope<Timestamp = T>>(
&mut self,
name: &str,
scope: &mut S
) -> Result<Collection<S, Vec<Value>, isize>, Error>[src]
&mut self,
name: &str,
scope: &mut S
) -> Result<Collection<S, Vec<Value>, isize>, Error>
Handles an Interest request.
pub fn register(&mut self, req: Register) -> Result<(), Error>[src]
Handle a Register request.
pub fn advance_domain(
&mut self,
name: Option<String>,
next: T
) -> Result<(), Error>[src]
&mut self,
name: Option<String>,
next: T
) -> Result<(), Error>
Handle an AdvanceDomain request.
pub fn uninterest(&mut self, client: Token, name: &str)[src]
Handles an Uninterest request, possibly cleaning up dataflows that are no longer interesting to any client.
pub fn disconnect_client(&mut self, client: Token)[src]
Cleans up all bookkeeping state for the specified client.
pub fn is_any_outdated(&self) -> bool[src]
Returns true iff the probe is behind any input handle. Mostly used as a convenience method during testing.
pub fn test_single<S: Scope<Timestamp = T>>(
&mut self,
scope: &mut S,
rule: Rule
) -> Collection<S, Vec<Value>, isize>[src]
&mut self,
scope: &mut S,
rule: Rule
) -> Collection<S, Vec<Value>, isize>
Helper for registering, publishing, and indicating interest in a single, named query. Used for testing.
impl<Token: Hash + Eq + Copy> Server<u64, Token>[src]
pub fn register_source<S: Scope<Timestamp = u64>>(
&mut self,
source: Source,
scope: &mut S
) -> Result<(), Error>[src]
&mut self,
source: Source,
scope: &mut S
) -> Result<(), Error>
Handle a RegisterSource request.
Auto Trait Implementations
Blanket Implementations
impl<T, U> Into for T where
U: From<T>, [src]
U: From<T>,
impl<T> From for T[src]
impl<T, U> TryFrom for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T> Borrow for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,