How ajlrza/kojindb works
RailDB is a proof-of-concept hybrid graph/relational database. Its visible CLI accepts login or registration input and writes account-named files through the storage layer; the README describes the broader intended flow as account authentication, token-based query sessions, and query execution. The implementation also contains table/schema, memory, graph-routing, planning, and transaction modules, but several are skeletal or unsampled. Edges below are limited to relationships shown in excerpts or documented in the README; unsampled subsystems are included without guessed wiring.
Main entry points: storage.cpp Storage Manager · query_planner.cpp Query Planner · cli_engine.cpp CLI Engine · account_management.cpp Account Management
Components 16
User Interface
- CLI Engine
src/engine/cli_engine.cpp - Account Management
src/engine/account_management.cpp
Query Processing
- Query Sessions
src/query_processor/query_processor.cpp - Query Lexer
src/query_processor/query_processor.cpp - Query Executor
src/query_processor/query_processor.cpp - Query Planner
src/query_planner/query_planner.cpp - Graph Router
src/query_planner/hexastore_router.cpp
Data Management
- Storage Manager
src/storage_manager/storage.cpp - Filesystem
- Table Management
src/table_management/table_management.cpp - Data Types
src/include/data_type_template.h - Property Graph
src/include/hexastore_router.h - B-Tree Mirrors
src/include/storage.h
Runtime Infrastructure
- Memory Management
src/memory_manager/memory_management.cpp - Transaction Manager
src/transaction_manager/transaction_manager.cpp
Other components
- Database User
Connections 12
- Database User → CLI Engine: enters input
src/engine/cli_engine.cpp - CLI Engine → Storage Manager: creates and writes
src/engine/cli_engine.cpp - Storage Manager → Filesystem: reads and writes
src/storage_manager/storage.cpp - Query Executor → Query Lexer: tokenizes query
src/query_processor/query_processor.cpp - Database User → Account Management: registers or logs in
README.md - Account Management → Query Sessions: authenticates sessions
README.md - Query Sessions → Query Executor: executes queries
README.md - Query Planner → Graph Router: plans graph queries
- Query Planner → B-Tree Mirrors: plans relational queries
README.md - Graph Router → Property Graph: routes graph traversal
README.md - Storage Manager → Table Management: uses table definitions
src/storage_manager/storage.cpp - Storage Manager → Data Types: imports data types
src/storage_manager/storage.cpp