Struct kanidmd_lib::be::BackendReadTransaction
source · pub struct BackendReadTransaction<'a> { /* private fields */ }
Implementations§
source§impl<'a> BackendReadTransaction<'a>
impl<'a> BackendReadTransaction<'a>
pub fn list_indexes(&mut self) -> Result<Vec<String>, OperationError>
pub fn list_id2entry(&mut self) -> Result<Vec<(u64, String)>, OperationError>
pub fn list_index_content(
&mut self,
index_name: &str
) -> Result<Vec<(String, IDLBitRange)>, OperationError>
pub fn get_id2entry(&mut self, id: u64) -> Result<(u64, String), OperationError>
Trait Implementations§
source§impl<'a> BackendTransaction for BackendReadTransaction<'a>
impl<'a> BackendTransaction for BackendReadTransaction<'a>
type IdlLayerType = IdlArcSqliteReadTransaction<'a>
type RuvType = ReplicationUpdateVectorReadTransaction<'a>
fn get_idlayer(&mut self) -> &mut IdlArcSqliteReadTransaction<'a>
fn get_ruv(&mut self) -> &mut ReplicationUpdateVectorReadTransaction<'a>
fn get_idxmeta_ref(&self) -> &IdxMeta
source§fn filter2idl(
&mut self,
filt: &FilterResolved,
thres: usize
) -> Result<(IdList, FilterPlan), OperationError>
fn filter2idl(
&mut self,
filt: &FilterResolved,
thres: usize
) -> Result<(IdList, FilterPlan), OperationError>
Recursively apply a filter, transforming into IdList’s on the way. This builds a query
execution log, so that it can be examined how an operation proceeded. Read more
fn search(
&mut self,
erl: &Limits,
filt: &Filter<FilterValidResolved>
) -> Result<Vec<Arc<EntrySealedCommitted>>, OperationError>
source§fn exists(
&mut self,
erl: &Limits,
filt: &Filter<FilterValidResolved>
) -> Result<bool, OperationError>
fn exists(
&mut self,
erl: &Limits,
filt: &Filter<FilterValidResolved>
) -> Result<bool, OperationError>
Given a filter, assert some condition exists.
Basically, this is a specialised case of search, where we don’t need to
load any candidates if they match. This is heavily used in uuid
refint and attr uniqueness. Read more