pub struct GraphTraversalOptions {
pub fan_out_soft: u16,
pub fan_out_hard: u16,
pub fan_out_partial: bool,
pub max_visited: usize,
}Expand description
Per-query graph traversal configuration.
Controls fan-out limits, partial result handling, and visited node caps for scatter-gather graph queries across shards.
Fields§
§fan_out_soft: u16Soft warning threshold (shards per hop).
When the number of shards reached in a single hop exceeds this value, a fan-out warning is emitted but execution continues. Default: 12
fan_out_hard: u16Hard limit (shards per hop).
Maximum number of shards that can be queried in a single hop.
If exceeded and fan_out_partial is false, returns FAN_OUT_EXCEEDED error.
Default: 16
fan_out_partial: boolIf true, return partial results instead of FAN_OUT_EXCEEDED error.
When the hard limit is exceeded, instead of failing with FAN_OUT_EXCEEDED, this flag allows the response to be marked as truncated with partial results. Default: false
max_visited: usizeCap on total visited nodes across all shards.
Once this limit is reached, no further node exploration occurs. Default: 100_000
Implementations§
Trait Implementations§
Source§impl Clone for GraphTraversalOptions
impl Clone for GraphTraversalOptions
Source§fn clone(&self) -> GraphTraversalOptions
fn clone(&self) -> GraphTraversalOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GraphTraversalOptions
impl Debug for GraphTraversalOptions
Source§impl Default for GraphTraversalOptions
impl Default for GraphTraversalOptions
Source§impl<'de> Deserialize<'de> for GraphTraversalOptions
impl<'de> Deserialize<'de> for GraphTraversalOptions
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for GraphTraversalOptions
Source§impl<'__msgpack_de> FromMessagePack<'__msgpack_de> for GraphTraversalOptions
impl<'__msgpack_de> FromMessagePack<'__msgpack_de> for GraphTraversalOptions
Source§impl PartialEq for GraphTraversalOptions
impl PartialEq for GraphTraversalOptions
Source§fn eq(&self, other: &GraphTraversalOptions) -> bool
fn eq(&self, other: &GraphTraversalOptions) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for GraphTraversalOptions
impl Serialize for GraphTraversalOptions
impl StructuralPartialEq for GraphTraversalOptions
Auto Trait Implementations§
impl Freeze for GraphTraversalOptions
impl RefUnwindSafe for GraphTraversalOptions
impl Send for GraphTraversalOptions
impl Sync for GraphTraversalOptions
impl Unpin for GraphTraversalOptions
impl UnsafeUnpin for GraphTraversalOptions
impl UnwindSafe for GraphTraversalOptions
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<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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<T> FromMessagePackOwned for Twhere
T: for<'a> FromMessagePack<'a>,
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> 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.impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.