DioxusLabs/dioxus · error
SelectorPath is full
Error message
SelectorPath is full
What it means
TinyVec::push exceeded its fixed PATH_LENGTH backing array. Selector paths in the stores subscription system have a hard-coded maximum depth; pushing more path keys than that capacity panics instead of growing, since the array is inline.
Source
Thrown at packages/stores/src/subscriptions.rs:195
length: 0,
path: [0; PATH_LENGTH],
}
}
pub(crate) fn from_slice(path: &[PathKey]) -> Self {
let mut out = Self::new();
for key in path {
out.push(*key);
}
out
}
pub(crate) const fn push(&mut self, index: u16) {
if self.length < self.path.len() {
self.path[self.length] = index;
self.length += 1;
} else {
panic!("SelectorPath is full");
}
}
}
impl Deref for TinyVec {
type Target = [u16];
fn deref(&self) -> &Self::Target {
&self.path[..self.length]
}
}
#[derive(Default)]
pub(crate) struct StoreSubscriptionsInner {
root: SelectorNode,
hasher: std::collections::hash_map::RandomState,
}
View on GitHub (pinned to 24f6a829df)
Solutions
- The SelectorPath reached its capacity. Reduce selector path depth by splitting nested accesses.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/stores/src/subscriptions.rs:195 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of DioxusLabs/dioxus@24f6a829df (2026-08-23).
Data as JSON: /api/errors/208101d7a7d09acf.
Report an issue: GitHub.