Skip to main content

Crate nodedb_array

Crate nodedb_array 

Source
Expand description

NodeDB Array Engine — shared ND sparse array primitives.

This crate provides the type substrate, schema definitions, coordinate encoding, and tile layout used by the array engine on both Origin (server) and Lite (embedded) deployments. Storage, WAL integration, and SQL routing live in their respective Origin-side crates.

Re-exports§

pub use coord::bits_per_dim;
pub use coord::decode_hilbert_prefix;
pub use coord::decode_zorder_prefix;
pub use coord::encode_hilbert_prefix;
pub use coord::encode_zorder_prefix;
pub use coord::normalize_coord;
pub use error::ArrayError;
pub use error::ArrayResult;
pub use schema::ArraySchema;
pub use schema::ArraySchemaBuilder;
pub use schema::AttrSpec;
pub use schema::CellOrder;
pub use schema::DimSpec;
pub use schema::DimType;
pub use schema::TileOrder;
pub use segment::FOOTER_MAGIC;
pub use segment::FORMAT_VERSION;
pub use segment::HEADER_MAGIC;
pub use segment::HilbertPackedRTree;
pub use segment::MbrQueryPredicate;
pub use segment::SegmentFooter;
pub use segment::SegmentHeader;
pub use segment::SegmentReader;
pub use segment::SegmentWriter;
pub use segment::TileEntry;
pub use segment::TileKind;
pub use segment::TilePayload;
pub use sync::AckVector;
pub use sync::ApplyEngine;
pub use sync::ApplyOutcome;
pub use sync::ApplyRejection;
pub use sync::ArrayOp;
pub use sync::ArrayOpHeader;
pub use sync::ArrayOpKind;
pub use sync::CoordRange;
pub use sync::GcReport;
pub use sync::Hlc;
pub use sync::HlcGenerator;
pub use sync::OpLog;
pub use sync::ReplicaId;
pub use sync::SchemaDoc;
pub use sync::SnapshotChunk;
pub use sync::SnapshotHeader;
pub use sync::SnapshotSink;
pub use sync::TileSnapshot;
pub use tile::AttrStats;
pub use tile::DENSE_PROMOTION_THRESHOLD;
pub use tile::DenseTile;
pub use tile::SparseTile;
pub use tile::TileMBR;
pub use tile::should_promote_to_dense;
pub use tile::sparse_to_dense;
pub use tile::tile_id_for_cell;
pub use tile::tile_indices_for_cell;
pub use types::ArrayId;
pub use types::CellValue;
pub use types::Coord;
pub use types::Domain;
pub use types::TileId;
pub use wal::ArrayWalRecord;

Modules§

codec
coord
error
Typed errors for the array engine.
query
Query operators over tiles.
schema
segment
sync
tile
types
wal
WAL record types for array CRDT sync operations.