- Remove gitlinks (160000 mode) for chainfire, flaredb, iam - Add workspace contents as regular tracked files - Update flake.nix to use simple paths instead of builtins.fetchGit This resolves the nix build failure where submodule directories appeared empty in the nix store. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
Quickstart Verification Guide: Core Distributed Architecture
This guide verifies the core components (PD, Server, Client) and storage engine behavior.
Prerequisites
- Rust Toolchain (
rustc,cargo) protoc(Protocol Buffers compiler)- CMake (for building RocksDB)
1. Build Workspace
cargo build
2. Run Integration Test
This feature includes a comprehensive integration test script.
# Run the custom verification script (to be implemented in tasks)
# ./scripts/verify-core.sh
3. Manual Verification Steps
A. Start PD (Placement Driver)
cargo run --bin rdb-pd
# Should listen on default port (e.g., 2379)
B. Start Server (Storage Node)
cargo run --bin rdb-server -- --pd-addr 127.0.0.1:2379
# Should listen on default port (e.g., 50051)
C. Run Client Operations
# Get TSO
cargo run --bin rdb-client -- tso
# Output: Timestamp: 1735689...
# Raw Put
cargo run --bin rdb-client -- raw-put --key foo --value bar
# Output: Success
# Raw Get
cargo run --bin rdb-client -- raw-get --key foo
# Output: bar
# CAS (Create)
cargo run --bin rdb-client -- cas --key meta1 --value "{json}" --expected 0
# Output: Success, Version: 1735689...
# CAS (Conflict)
cargo run --bin rdb-client -- cas --key meta1 --value "{new}" --expected 0
# Output: Conflict! Current Version: 1735689...