pub struct DatabaseClient<T> { /* private fields */ }Implementations§
Source§impl DatabaseClient<Channel>
impl DatabaseClient<Channel>
Source§impl<T> DatabaseClient<T>where
T: GrpcService<UnsyncBoxBody<Bytes, Status>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::Error: Into<Box<dyn Error + Sync + Send>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody: Body<Data = Bytes> + Send + 'static,
<<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody as Body>::Error: Into<Box<dyn Error + Sync + Send>> + Send,
impl<T> DatabaseClient<T>where
T: GrpcService<UnsyncBoxBody<Bytes, Status>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::Error: Into<Box<dyn Error + Sync + Send>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody: Body<Data = Bytes> + Send + 'static,
<<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody as Body>::Error: Into<Box<dyn Error + Sync + Send>> + Send,
pub fn new(inner: T) -> DatabaseClient<T>
pub fn with_origin(inner: T, origin: Uri) -> DatabaseClient<T>
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> DatabaseClient<InterceptedService<T, F>>where
F: Interceptor,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody: Default,
T: Service<Request<UnsyncBoxBody<Bytes, Status>>, Response = Response<<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody>>,
<T as Service<Request<UnsyncBoxBody<Bytes, Status>>>>::Error: Into<Box<dyn Error + Sync + Send>> + Send + Sync,
Sourcepub fn send_compressed(self, encoding: CompressionEncoding) -> DatabaseClient<T>
pub fn send_compressed(self, encoding: CompressionEncoding) -> DatabaseClient<T>
Compress requests with the given encoding.
This requires the server to support it otherwise it might respond with an error.
Sourcepub fn accept_compressed(
self,
encoding: CompressionEncoding,
) -> DatabaseClient<T>
pub fn accept_compressed( self, encoding: CompressionEncoding, ) -> DatabaseClient<T>
Enable decompressing responses.
Sourcepub fn max_decoding_message_size(self, limit: usize) -> DatabaseClient<T>
pub fn max_decoding_message_size(self, limit: usize) -> DatabaseClient<T>
Limits the maximum size of a decoded message.
Default: 4MB
Sourcepub fn max_encoding_message_size(self, limit: usize) -> DatabaseClient<T>
pub fn max_encoding_message_size(self, limit: usize) -> DatabaseClient<T>
Limits the maximum size of an encoded message.
Default: usize::MAX
Sourcepub async fn create_collection(
&mut self,
request: impl IntoRequest<CreateCollectionRequest>,
) -> Result<Response<StatusResponse>, Status>
pub async fn create_collection( &mut self, request: impl IntoRequest<CreateCollectionRequest>, ) -> Result<Response<StatusResponse>, Status>
Collection Management
pub async fn delete_collection( &mut self, request: impl IntoRequest<DeleteCollectionRequest>, ) -> Result<Response<StatusResponse>, Status>
pub async fn list_collections( &mut self, request: impl IntoRequest<Empty>, ) -> Result<Response<ListCollectionsResponse>, Status>
pub async fn get_collection_stats( &mut self, request: impl IntoRequest<CollectionStatsRequest>, ) -> Result<Response<CollectionStatsResponse>, Status>
Sourcepub async fn insert(
&mut self,
request: impl IntoRequest<InsertRequest>,
) -> Result<Response<InsertResponse>, Status>
pub async fn insert( &mut self, request: impl IntoRequest<InsertRequest>, ) -> Result<Response<InsertResponse>, Status>
Insert vectors
pub async fn batch_insert( &mut self, request: impl IntoRequest<BatchInsertRequest>, ) -> Result<Response<InsertResponse>, Status>
pub async fn insert_text( &mut self, request: impl IntoRequest<InsertTextRequest>, ) -> Result<Response<InsertResponse>, Status>
pub async fn vectorize( &mut self, request: impl IntoRequest<VectorizeRequest>, ) -> Result<Response<VectorizeResponse>, Status>
pub async fn search_text( &mut self, request: impl IntoRequest<SearchTextRequest>, ) -> Result<Response<SearchResponse>, Status>
Sourcepub async fn delete(
&mut self,
request: impl IntoRequest<DeleteRequest>,
) -> Result<Response<DeleteResponse>, Status>
pub async fn delete( &mut self, request: impl IntoRequest<DeleteRequest>, ) -> Result<Response<DeleteResponse>, Status>
Delete vectors
Sourcepub async fn search(
&mut self,
request: impl IntoRequest<SearchRequest>,
) -> Result<Response<SearchResponse>, Status>
pub async fn search( &mut self, request: impl IntoRequest<SearchRequest>, ) -> Result<Response<SearchResponse>, Status>
Search (ANN)
Sourcepub async fn search_batch(
&mut self,
request: impl IntoRequest<BatchSearchRequest>,
) -> Result<Response<BatchSearchResponse>, Status>
pub async fn search_batch( &mut self, request: impl IntoRequest<BatchSearchRequest>, ) -> Result<Response<BatchSearchResponse>, Status>
Batch Search (ANN)
Sourcepub async fn search_multi_collection(
&mut self,
request: impl IntoRequest<SearchMultiCollectionRequest>,
) -> Result<Response<SearchMultiCollectionResponse>, Status>
pub async fn search_multi_collection( &mut self, request: impl IntoRequest<SearchMultiCollectionRequest>, ) -> Result<Response<SearchMultiCollectionResponse>, Status>
Multi-Geometry Search (v3.0)
Sourcepub async fn get_node(
&mut self,
request: impl IntoRequest<GetNodeRequest>,
) -> Result<Response<GraphNode>, Status>
pub async fn get_node( &mut self, request: impl IntoRequest<GetNodeRequest>, ) -> Result<Response<GraphNode>, Status>
Graph Traversal API (v2.3)
pub async fn get_neighbors( &mut self, request: impl IntoRequest<GetNeighborsRequest>, ) -> Result<Response<GetNeighborsResponse>, Status>
pub async fn get_concept_parents( &mut self, request: impl IntoRequest<GetConceptParentsRequest>, ) -> Result<Response<GetConceptParentsResponse>, Status>
pub async fn traverse( &mut self, request: impl IntoRequest<TraverseRequest>, ) -> Result<Response<TraverseResponse>, Status>
pub async fn find_semantic_clusters( &mut self, request: impl IntoRequest<FindSemanticClustersRequest>, ) -> Result<Response<FindSemanticClustersResponse>, Status>
Sourcepub async fn monitor(
&mut self,
request: impl IntoRequest<MonitorRequest>,
) -> Result<Response<Streaming<SystemStats>>, Status>
pub async fn monitor( &mut self, request: impl IntoRequest<MonitorRequest>, ) -> Result<Response<Streaming<SystemStats>>, Status>
Stream statistics for TUI (Global or Collection tailored)
Sourcepub async fn trigger_snapshot(
&mut self,
request: impl IntoRequest<Empty>,
) -> Result<Response<StatusResponse>, Status>
pub async fn trigger_snapshot( &mut self, request: impl IntoRequest<Empty>, ) -> Result<Response<StatusResponse>, Status>
Admin Controls
pub async fn trigger_vacuum( &mut self, request: impl IntoRequest<Empty>, ) -> Result<Response<StatusResponse>, Status>
pub async fn trigger_reconsolidation( &mut self, request: impl IntoRequest<ReconsolidationRequest>, ) -> Result<Response<StatusResponse>, Status>
Sourcepub async fn configure(
&mut self,
request: impl IntoRequest<ConfigUpdate>,
) -> Result<Response<StatusResponse>, Status>
pub async fn configure( &mut self, request: impl IntoRequest<ConfigUpdate>, ) -> Result<Response<StatusResponse>, Status>
Dynamic Configuration
Sourcepub async fn replicate(
&mut self,
request: impl IntoRequest<ReplicationRequest>,
) -> Result<Response<Streaming<ReplicationLog>>, Status>
pub async fn replicate( &mut self, request: impl IntoRequest<ReplicationRequest>, ) -> Result<Response<Streaming<ReplicationLog>>, Status>
Replication (Leader -> Follower)
Sourcepub async fn subscribe_to_events(
&mut self,
request: impl IntoRequest<EventSubscriptionRequest>,
) -> Result<Response<Streaming<EventMessage>>, Status>
pub async fn subscribe_to_events( &mut self, request: impl IntoRequest<EventSubscriptionRequest>, ) -> Result<Response<Streaming<EventMessage>>, Status>
CDC/Event Stream (External subscribers)
pub async fn get_digest( &mut self, request: impl IntoRequest<DigestRequest>, ) -> Result<Response<DigestResponse>, Status>
pub async fn rebuild_index( &mut self, request: impl IntoRequest<RebuildIndexRequest>, ) -> Result<Response<StatusResponse>, Status>
Sourcepub async fn sync_handshake(
&mut self,
request: impl IntoRequest<SyncHandshakeRequest>,
) -> Result<Response<SyncHandshakeResponse>, Status>
pub async fn sync_handshake( &mut self, request: impl IntoRequest<SyncHandshakeRequest>, ) -> Result<Response<SyncHandshakeResponse>, Status>
Delta Sync (Merkle Tree — Task 2.1) Step 1: Client sends its digest, server returns which buckets differ.
Sourcepub async fn sync_pull(
&mut self,
request: impl IntoRequest<SyncPullRequest>,
) -> Result<Response<Streaming<SyncVectorData>>, Status>
pub async fn sync_pull( &mut self, request: impl IntoRequest<SyncPullRequest>, ) -> Result<Response<Streaming<SyncVectorData>>, Status>
Step 2: Client requests vectors from specific buckets, server streams them.
Sourcepub async fn sync_push(
&mut self,
request: impl IntoStreamingRequest<Message = SyncVectorData>,
) -> Result<Response<SyncPushResponse>, Status>
pub async fn sync_push( &mut self, request: impl IntoStreamingRequest<Message = SyncVectorData>, ) -> Result<Response<SyncPushResponse>, Status>
Step 3 (optional): Client pushes its unique vectors to the server.
Trait Implementations§
Source§impl<T> Clone for DatabaseClient<T>where
T: Clone,
impl<T> Clone for DatabaseClient<T>where
T: Clone,
Source§fn clone(&self) -> DatabaseClient<T>
fn clone(&self) -> DatabaseClient<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<T> !Freeze for DatabaseClient<T>
impl<T> RefUnwindSafe for DatabaseClient<T>where
T: RefUnwindSafe,
impl<T> Send for DatabaseClient<T>where
T: Send,
impl<T> Sync for DatabaseClient<T>where
T: Sync,
impl<T> Unpin for DatabaseClient<T>where
T: Unpin,
impl<T> UnsafeUnpin for DatabaseClient<T>where
T: UnsafeUnpin,
impl<T> UnwindSafe for DatabaseClient<T>where
T: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> 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::Request