pub struct AqlServiceImpl<S: StorageEngine> { /* private fields */ }Expand description
AQL service implementation
This service handles all AQL query requests and connects them to the underlying storage engine.
Implementations§
Source§impl<S: StorageEngine> AqlServiceImpl<S>
impl<S: StorageEngine> AqlServiceImpl<S>
Sourcepub fn new(storage: Arc<S>) -> Self
pub fn new(storage: Arc<S>) -> Self
Create a new AQL service with the given storage engine (without compute)
Sourcepub async fn execute_query(&self, request: QueryRequest) -> QueryResponse
pub async fn execute_query(&self, request: QueryRequest) -> QueryResponse
Execute a query and return the result
Sourcepub async fn execute_batch(&self, request: BatchRequest) -> BatchResponse
pub async fn execute_batch(&self, request: BatchRequest) -> BatchResponse
Execute a batch of queries as a transaction
All queries are executed sequentially. If any query fails, all previously completed write operations (Set/Delete) are rolled back, and an error response is returned. Read-only operations (Get/Range) are not tracked for rollback since they don’t mutate state.
Sourcepub fn execute_stream(
&self,
request: QueryRequest,
config: StreamConfig,
) -> BoxStream<'static, Result<StreamResponse, NetError>>
pub fn execute_stream( &self, request: QueryRequest, config: StreamConfig, ) -> BoxStream<'static, Result<StreamResponse, NetError>>
Execute a streaming query that returns results in chunks
This method executes a range or filter query and returns results as a stream
of StreamResponse messages, each containing a batch of key-value pairs.
The chunk size controls how many items are included per message.
§Arguments
request- The query request to executeconfig- Streaming configuration (chunk size, max results, timeout)
§Returns
A boxed stream of Result<aql::StreamResponse, NetError> messages
Sourcepub async fn health_check(
&self,
_request: HealthCheckRequest,
) -> HealthCheckResponse
pub async fn health_check( &self, _request: HealthCheckRequest, ) -> HealthCheckResponse
Health check
Sourcepub async fn get_server_info(
&self,
_request: ServerInfoRequest,
) -> ServerInfoResponse
pub async fn get_server_info( &self, _request: ServerInfoRequest, ) -> ServerInfoResponse
Get server information
Auto Trait Implementations§
impl<S> Freeze for AqlServiceImpl<S>
impl<S> !RefUnwindSafe for AqlServiceImpl<S>
impl<S> Send for AqlServiceImpl<S>
impl<S> Sync for AqlServiceImpl<S>
impl<S> Unpin for AqlServiceImpl<S>
impl<S> UnsafeUnpin for AqlServiceImpl<S>
impl<S> !UnwindSafe for AqlServiceImpl<S>
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Source§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>
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>
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>
T in a tonic::RequestSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.