Skip to content

Commit cb5ac91

Browse files
docs(readme): where to run it, and which disks are tested (#76)
Supported platforms and where to keep the data directory, with measured per-ack costs from bench/RESULTS.md. Part of #71.
1 parent eb2ed1f commit cb5ac91

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

‎README.md‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,21 @@
33
Agent memory database in Rust. It stores turn history per session and keyed facts. A write is acked only after it is synced to disk.
44
Status: early. Don't run it in production. Built so far: the tape, session engine, disk-full handling, server and facts (S1 to S4).
55

6+
## Where to run it
7+
8+
macOS and Linux only. Windows isn't supported. No release binaries yet, so build from source as below. 1-command install and connect is planned in [#71](https://github.com/Clawdlinux/zerodb/issues/71).
9+
10+
Every write is acked only after `fdatasync`, so the disk under the data directory sets your write latency. Keep it on a local disk:
11+
12+
| Data directory on | Status |
13+
|---|---|
14+
| Local NVMe or SATA SSD | Tested on NVMe with Linux ext4. An ack costs about 1 device round trip, about 60 µs on NVMe. macOS APFS is tested for development |
15+
| Network block SSD, such as Azure Premium SSD v2 or P30 | Tested with Linux ext4. An ack costs 1 device round trip: about 1.9 ms on Premium SSD v2 and 4.4 ms on P30 |
16+
| HDD | Untested. It should work, but each ack waits for a sync to a spinning disk, which takes milliseconds |
17+
| NFS, SMB, FUSE mounts, or folders synced by iCloud Drive, Dropbox, OneDrive or Google Drive | Don't. `fsync` and `flock` guarantees vary on these, and sync clients copy files while they're being written |
18+
19+
The data directory must be mode `0700` (D75). Below a free-space floor zerodb goes read-only and keeps serving reads (I14).
20+
621
## Quick start
722

823
```sh

0 commit comments

Comments
 (0)