Skip to main content

Module session_db

Module session_db 

Source
Expand description

SessionDb — SQLite-backed session store shared by the debug and profile tracks.

Policy highlights (see plans/sorted-nibbling-lovelace.md):

  • No backward compatibility. Old DBs fail to load with a re-collect message; see schema::SCHEMA_VERSION.
  • Adaptation layer. Raw native captures live under .dbg/sessions/<label>/raw/ and layers.file points at them — SessionDb tables index, they do not replace.
  • Two tracks, one DB. Debug and profile commands write into the same DB and join on canonical (lang, fqn) symbols.

Re-exports§

pub use canonicalizer::CanonicalSymbol;
pub use canonicalizer::Canonicalizer;
pub use canonicalizer::for_lang;
pub use collectors::CollectCtx;
pub use collectors::CollectTrigger;
pub use collectors::DisasmOutput;
pub use collectors::LiveDebugger;
pub use collectors::OnDemandCollector;
pub use collectors::persist_disasm;
pub use lifecycle::CreateOptions;
pub use lifecycle::PrunePolicy;
pub use lifecycle::SessionDb;
pub use lifecycle::auto_label;
pub use lifecycle::compute_target_hash;
pub use lifecycle::group_key;
pub use lifecycle::prune;
pub use lifecycle::raw_dir;
pub use lifecycle::sessions_dir;
pub use schema::SCHEMA_VERSION;

Modules§

canonicalizer
Per-language symbol canonicalization.
collectors
On-demand collectors.
lifecycle
SessionDb lifecycle: create, open (with strict schema-version check), save-to, prune, session groups, raw-file paths.
schema
SessionDb schema DDL.

Enums§

SessionKind
The session kind — debug sessions drive an interactive debugger, profile sessions collect and analyze samples.
TargetClass
The target classification that drives which domain tables exist and which profile collectors apply.