Expand description
Lazy-Loading Graph Module
This module provides lazy-loading capabilities for large code graphs:
- SQLite-backed partition storage
- On-demand partition loading into petgraph
- Memory-based eviction with LRU tracking
- Cross-partition edge indexing
§Architecture
LazyGraphManager
├── PetCodeGraph (runtime graph, all loaded partitions)
├── PartitionRegistry (tracks loaded partitions)
├── MemoryBudgetCache (LRU eviction by bytes)
└── CrossRefIndex (cross-partition edges)
Storage:
├── manifest.json (file → partition mapping)
├── partitions/*.db (SQLite partition files)
└── cross_refs.db (cross-partition edges)Re-exports§
pub use cache::CacheMetrics;pub use cache::MemoryBudgetCache;pub use cache::PartitionStats as CachePartitionStats;pub use cache::estimate_memory;pub use cross_refs::CROSS_REFS_SCHEMA_VERSION;pub use cross_refs::CrossRef;pub use cross_refs::CrossRefError;pub use cross_refs::CrossRefIndex;pub use cross_refs::CrossRefStore;pub use manager::LazyGraphError;pub use manager::LazyGraphManager;pub use manager::LazyGraphStats;pub use manager::Manifest;pub use manager::ManifestEntry;pub use partition::PartitionConnection;pub use partition::PartitionError;pub use partition::PartitionStats;pub use partitioner::GraphPartitioner;pub use partitioner::PartitionerError;pub use partitioner::PartitioningStats;pub use schema::EDGE_COLUMNS;pub use schema::NODE_COLUMNS;pub use schema::PARTITION_SCHEMA_VERSION;pub use schema::SCHEMA_CREATE_EDGES;pub use schema::SCHEMA_CREATE_INDEXES;pub use schema::SCHEMA_CREATE_METADATA;pub use schema::SCHEMA_CREATE_NODES;
Modules§
- cache
- Memory Budget Cache
- cross_
refs - Cross-Partition Edge Index and Storage
- manager
- Lazy Graph Manager
- partition
- SQLite Partition Connection and CRUD Operations
- partitioner
- Graph Partitioner
- schema
- SQLite Schema Definitions for Partition Storage