pub struct Executor(/* private fields */);Expand description
Executor is the orchestration layer for RQL statement execution.
Implementations§
Source§impl Executor
impl Executor
pub fn new( catalog: Catalog, config: EngineConfig, flow_operator_store: SystemFlowOperatorStore, stats_reader: MetricReader<SingleStore>, ) -> Self
Sourcepub fn from_services(services: Arc<Services>) -> Self
pub fn from_services(services: Arc<Services>) -> Self
Construct an Executor from an existing Arc<Services>.
pub fn testing() -> Self
Source§impl Executor
impl Executor
Sourcepub fn rql(
&self,
tx: &mut Transaction<'_>,
rql: &str,
params: Params,
) -> ExecutionResult
pub fn rql( &self, tx: &mut Transaction<'_>, rql: &str, params: Params, ) -> ExecutionResult
Execute RQL against an existing open transaction.
This is the universal RQL execution interface: it compiles and runs arbitrary RQL within whatever transaction variant the caller provides.
pub fn admin( &self, txn: &mut AdminTransaction, cmd: Admin<'_>, ) -> ExecutionResult
pub fn test( &self, txn: &mut TestTransaction<'_>, cmd: Test<'_>, ) -> ExecutionResult
pub fn subscription( &self, txn: &mut QueryTransaction, cmd: Subscription<'_>, ) -> ExecutionResult
pub fn command( &self, txn: &mut CommandTransaction, cmd: Command<'_>, ) -> ExecutionResult
Sourcepub fn call_procedure(
&self,
txn: &mut CommandTransaction,
name: &str,
params: &Params,
) -> ExecutionResult
pub fn call_procedure( &self, txn: &mut CommandTransaction, name: &str, params: &Params, ) -> ExecutionResult
Call a procedure by fully-qualified name (e.g., “banking.transfer_funds”).
pub fn query( &self, txn: &mut QueryTransaction, qry: Query<'_>, ) -> ExecutionResult
Methods from Deref<Target = Services>§
pub fn get_handlers(&self, variant: VariantRef) -> Vec<Box<dyn Procedure>>
pub fn get_procedure(&self, name: &str) -> Option<Box<dyn Procedure>>
Trait Implementations§
Source§impl RqlExecutor for Executor
impl RqlExecutor for Executor
fn rql( &self, tx: &mut Transaction<'_>, rql: &str, params: Params, ) -> ExecutionResult
Auto Trait Implementations§
impl Freeze for Executor
impl !RefUnwindSafe for Executor
impl Send for Executor
impl Sync for Executor
impl Unpin for Executor
impl UnsafeUnpin for Executor
impl !UnwindSafe for Executor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request