move stuff around

main
Ziyang Hu 2 years ago
parent 38745af8ea
commit 4a360b0464

@ -13,7 +13,7 @@ use crate::data::json::JsonValue;
use crate::data::keyword::Keyword;
use crate::data::triple::StoreOp;
use crate::data::value::{DataValue, INLINE_VAL_SIZE_LIMIT};
use crate::preprocess::triple::TempIdCtx;
use crate::parse::triple::TempIdCtx;
#[derive(Debug, thiserror::Error)]
pub enum AttributeError {

@ -3,7 +3,7 @@ use tikv_jemallocator::Jemalloc;
pub use data::encode::EncodedVec;
pub use data::id::{AttrId, EntityId, TxId, Validity};
pub use preprocess::attr::AttrTxItem;
pub use parse::schema::AttrTxItem;
pub use runtime::db::Db;
#[cfg(not(target_env = "msvc"))]
@ -11,7 +11,7 @@ pub use runtime::db::Db;
static GLOBAL: Jemalloc = Jemalloc;
pub(crate) mod data;
pub(crate) mod preprocess;
pub(crate) mod parse;
pub(crate) mod runtime;
pub(crate) mod transact;
pub(crate) mod utils;

@ -1,4 +1,4 @@
pub(crate) mod attr;
pub(crate) mod schema;
pub(crate) mod pull;
pub(crate) mod query;
pub(crate) mod triple;

@ -8,9 +8,9 @@ use crate::data::attr::AttributeCardinality;
use crate::data::json::JsonValue;
use crate::data::keyword::Keyword;
use crate::data::value::DataValue;
use crate::preprocess::triple::TxError;
use crate::parse::triple::TxError;
use crate::runtime::transact::SessionTx;
use crate::transact::pull::{AttrPullSpec, PullSpec, PullSpecs};
use crate::query::pull::{AttrPullSpec, PullSpec, PullSpecs};
#[derive(Debug, thiserror::Error)]
pub enum PullError {

@ -10,7 +10,7 @@ use crate::data::attr::Attribute;
use crate::data::json::JsonValue;
use crate::data::keyword::Keyword;
use crate::data::value::DataValue;
use crate::preprocess::triple::TxError;
use crate::parse::triple::TxError;
use crate::query::compile::{
Atom, AttrTripleAtom, BindingHeadTerm, DatalogProgram, QueryCompilationError, Rule,
RuleApplyAtom, RuleSet, Term,

@ -1,3 +1,4 @@
pub(crate) mod relation;
pub(crate) mod compile;
pub(crate) mod eval;
pub(crate) mod pull;

@ -22,7 +22,7 @@ use crate::data::triple::StoreOp;
use crate::data::tuple::{rusty_scratch_cmp, SCRATCH_DB_KEY_PREFIX_LEN};
use crate::data::value::DataValue;
use crate::runtime::transact::SessionTx;
use crate::transact::pull::CurrentPath;
use crate::query::pull::CurrentPath;
pub struct Db {
db: RocksDb,

@ -16,12 +16,12 @@ use crate::data::id::{AttrId, EntityId, Validity};
use crate::data::keyword::Keyword;
use crate::data::triple::StoreOp;
use crate::data::value::{DataValue, INLINE_VAL_SIZE_LIMIT};
use crate::preprocess::triple::{Quintuple, TxAction};
use crate::parse::triple::{Quintuple, TxAction};
use crate::runtime::transact::{SessionTx, TransactError};
use crate::utils::swap_option_result;
#[derive(Debug, thiserror::Error)]
enum TripleError {
enum ExecError {
#[error("use of temp entity id: {0:?}")]
TempEid(EntityId),
#[error("unique constraint violated: {0} {1}")]
@ -221,7 +221,7 @@ impl SessionTx {
for item in self.triple_av_before_scan(attr.id, v, vld_in_key) {
let (_, _, found_eid) = item?;
if found_eid != eid {
return Err(TripleError::UniqueConstraintViolated(
return Err(ExecError::UniqueConstraintViolated(
attr.keyword.clone(),
format!("{:?}", v),
)
@ -232,7 +232,7 @@ impl SessionTx {
for item in self.triple_av_after_scan(attr.id, v, vld_in_key) {
let (_, _, found_eid) = item?;
if found_eid != eid {
return Err(TripleError::UniqueConstraintViolated(
return Err(ExecError::UniqueConstraintViolated(
attr.keyword.clone(),
format!("{:?}", v),
)
@ -242,7 +242,7 @@ impl SessionTx {
} else if let Some(v_slice) = self.tx.get(&ave_encoded, false)? {
let (_, found_eid, _) = decode_ae_key(&v_slice)?;
if found_eid != eid {
return Err(TripleError::UniqueConstraintViolated(
return Err(ExecError::UniqueConstraintViolated(
attr.keyword.clone(),
format!("{:?}", v),
)
@ -318,7 +318,7 @@ impl SessionTx {
vld: Validity,
) -> Result<EntityId> {
if !eid.is_perm() {
return Err(TripleError::TempEid(eid).into());
return Err(ExecError::TempEid(eid).into());
}
// checking that the eid actually exists should be done in the preprocessing step
self.write_triple(eid, attr, v, vld, StoreOp::Retract)
@ -436,7 +436,7 @@ impl SessionTx {
let res = self
.tx
.get(&encoded, false)?
.ok_or(TripleError::TripleEANotFound(eid, aid, vld))?;
.ok_or(ExecError::TripleEANotFound(eid, aid, vld))?;
decode_value(&res.as_ref()[1..])
}
pub(crate) fn triple_ea_scan(

@ -1,3 +1,2 @@
pub(crate) mod attr;
pub(crate) mod pull;
pub(crate) mod triple;
pub(crate) mod meta;
pub(crate) mod exec;

Loading…
Cancel
Save