cozis and Claude Opus 4.6
5688860719
Add WAL persistence to VSR log
...
Port the Write-Ahead Log implementation from raft/ into the VSR
server. Log entries are now written to disk with FNV-1a checksums
and fsynced before updating in-memory state. On startup, the WAL
file is loaded and validated, replacing the boot marker for crash
detection. View changes and recovery use atomic rename (tmp.log ->
vsr.log) to replace the WAL safely.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-22 16:28:39 +01:00
cozis
487f3bf010
Add disclaimer to README.md
2026-02-22 14:18:57 +01:00
cozis
11a0d9630e
Add first version of the README.md
2026-02-22 14:17:54 +01:00
cozis
2c7bc5cd4e
Simplify message routing in server
2026-02-22 13:46:23 +01:00
cozis
743528b92f
Add TODO.txt
2026-02-22 13:46:04 +01:00
cozis
b0cffd8198
Make client ID random in example
2026-02-22 00:41:01 +01:00
cozis
9849e8790a
Forward-declare pollfd in toastyfs.h
2026-02-22 00:08:37 +01:00
cozis
964a029154
Add parallel transfer limit to client
2026-02-22 00:07:53 +01:00
cozis
32c054a421
Only set SO_REUSEADDR when not in the simulation
2026-02-21 23:36:54 +01:00
cozis
fa3dc2483b
Use single-line comments in example
2026-02-21 22:13:18 +01:00
cozis
0c044d8dba
Add README.md
2026-02-21 16:10:40 +01:00
cozis
2a3bbf8837
Remove unused docker stuff
2026-02-21 16:02:14 +01:00
cozis
a6bdd94cbf
Merge branch 'claude/library-build-container-Dd9Tg' of https://github.com/cozis/TinyDFS into claude/library-build-container-Dd9Tg
2026-02-21 16:00:28 +01:00
cozis
99b6c9dfcc
Move files from lib/ into src/ and refactor the random client
2026-02-21 12:21:32 +01:00
cozis
b64517c20e
Full rewrite with VSR support
2026-02-20 16:55:29 +01:00
cozis
2460817fa4
Bring back the old TODO.txt
2026-01-29 00:10:20 +01:00
cozis
6e3a5c2fff
Add library pseudocode
2026-01-29 00:07:29 +01:00
cozis
fa5cdca459
Add spec of the chunk server and metadata server to spec/spec.txt
2026-01-28 23:43:46 +01:00
cozis
1d6b11bcc3
Add signal queue to Quakey
2026-01-28 20:57:33 +01:00
cozis
da3223a725
Add TODO.txt
2026-01-28 12:36:55 +01:00
cozis
a3b29d6652
Fix formatting of #includes
2026-01-28 12:36:48 +01:00
cozis
3bb30dcd09
Implement pipe() mock
2026-01-27 22:57:45 +01:00
cozis
10053d3567
Add basic file creation, write, then read test and fix bug in tcp.c
2026-01-25 13:02:12 +01:00
cozis
31708d22cc
Add feature testing build
2026-01-24 17:29:56 +01:00
cozis
d4c2137eaa
Add allocation failure injection
2026-01-24 12:12:48 +01:00
cozis
bf989864a3
Add random connect() letencies and disk bit corruption
2026-01-24 12:09:28 +01:00
cozis
07bc952cb9
Add fault injection of disk operations
2026-01-24 11:53:38 +01:00
cozis
7306bd1203
Add fault injection for partial read/writes and random send() delays
2026-01-24 11:40:45 +01:00
cozis
18817203bf
Add second client to the simulation
2026-01-24 11:23:19 +01:00
cozis
a5296434d8
Merge branch 'claude/add-coverage-report-fpLp1' into add-quakey-simulator
2026-01-24 02:07:30 +01:00
cozis
d5700bf45c
Initialize static array
2026-01-24 01:26:55 +01:00
cozis
30c60d84df
Bug fix
2026-01-23 20:57:14 +01:00
cozis
776f8c1015
Fix scheduling issue where time didn't advance if a host was always ready
2026-01-23 18:37:26 +01:00
cozis
bde2d5a1ca
Replace LittleFS with MockFS
2026-01-23 17:51:59 +01:00
cozis
028f25b942
Fix signed integer overflow in time calculation
2026-01-17 01:14:51 +01:00
cozis
6ef5e1a94c
Fix simulation setup
2026-01-16 19:38:36 +01:00
cozis
c10493881b
Add Quakey
2026-01-16 14:45:09 +01:00
cozis
18e74a92c0
Rename inc/ to include/
2025-12-05 09:52:49 +01:00
cozis
d2c5c42537
Update the synchronization app to periodically query the remote root directory listing
2025-12-05 09:44:42 +01:00
cozis
49cee347f5
Add the terminator "/" to directory names when returning directory listings from the web interface
2025-12-05 09:19:25 +01:00
cozis
1e2223aeb0
Fix bad usage of the toastyfs client API in the web interface GET handler
2025-12-05 09:10:25 +01:00
cozis
acc9c097d3
Forward declare struct pollfd in ToastyFS.h to avoid including winsock2.h and poll.h
2025-12-05 09:10:25 +01:00
cozis
e73bb3a7d8
Add crash logger
2025-12-04 12:25:19 +01:00
cozis
5c192a1e52
Fix wrong error code returned by file_tree_read
2025-12-03 21:15:54 +01:00
cozis
a082f46b78
Update TODO.txt
2025-12-03 19:12:35 +01:00
cozis
6519b0c1bb
Fix incorrect call to http_response_builder_body_cap in toastyfs_web
2025-12-03 18:01:39 +01:00
cozis
012b31df3a
Fix compilation warnings
2025-12-03 00:03:44 +01:00
cozis
b0b2d576cc
Refactoring of toastyfs_web
2025-12-03 00:03:36 +01:00
cozis
09ec872591
Merge branch 'main' into synchronization_app
2025-12-02 12:21:39 +01:00
cozis
f665dae9ed
Update chttp.c/.h
2025-12-02 12:07:10 +01:00
cozis
0d099a1fa6
Return version tags in directory listing
2025-11-25 12:08:33 +01:00
cozis
afad13f44f
Allow users of libtoastyfs to operate on files/directories with specific version tags
2025-11-24 14:34:57 +01:00
cozis
49091aff6d
Document communication between metadata server and clients in the misc/PROTOCOL.txt file and add generation counters for files
2025-11-24 13:04:29 +01:00
cozis
1c768bb8f1
Add logging to app.py
2025-11-23 11:33:30 +01:00
cozis
8e37bc674f
Draft of app.py, a python script which synchronized local folders to ToastyFS through the web interface
2025-11-23 11:21:34 +01:00
cozis
70a3a91783
Change README.md to refer to the cluster demo script
2025-11-23 09:53:36 +01:00
cozis
e99c574767
Add options --reuse-addr and --trace-bytes to toastyfs_web
2025-11-23 09:08:45 +01:00
cozis
b661f18214
Fix bug
2025-11-23 00:55:07 +01:00
cozis
0dbb5b1fc5
Add command-line arguments to toastyfs_web
2025-11-23 00:46:27 +01:00
cozis
d7a2262172
Fix compilation errors of the web interface
2025-11-22 23:59:08 +01:00
cozis
b930ba08e3
Add the ability to associate an opaque user pointer to a ToastyHandle which is then returned in its associated ToastyResult
2025-11-22 23:09:31 +01:00
cozis
e1fa3729c6
Drop the MAX_CONNS macro and define TCP_CONNECTION_LIMIT, TCP_POLL_CAPACITY, TCP_EVENT_CAPACITY instead
2025-11-22 22:59:32 +01:00
cozis
582893be70
Add notes on the HTTP's interface semantics
2025-11-22 13:13:10 +01:00
cozis
b2b1ed540b
Update cHTTP and rewrite web/main.c
2025-11-22 12:30:47 +01:00
cozis
747f851155
Draft of the REST server client using cHTTP
2025-11-20 10:50:55 +01:00
cozis
b0313ffcf8
Make toasty client thread-safe and implement toasty_wakeup
2025-11-20 03:51:01 +01:00
cozis
9b40edb56c
Minor change to README.md code snippet
2025-11-18 18:57:39 +01:00
cozis
8c98835364
Add entries to TODO.txt
2025-11-18 11:44:53 +01:00
cozis
9d0a8e7de5
Bug fix
2025-11-17 23:30:50 +01:00
cozis
c83b56ad90
Bug fix
2025-11-17 23:18:10 +01:00
cozis
690a950e71
Bug fixes
2025-11-17 23:07:50 +01:00
cozis
dabd337bb8
Use mock versions of lseek and SetFilePointer in file_system.c
2025-11-17 22:49:41 +01:00
cozis
dd74106935
Ignore .wal and .tmp files
2025-11-17 22:49:20 +01:00
cozis
94744ede6f
Use mocked version of MoveFileExW in wal.c
2025-11-17 22:34:38 +01:00
cozis
fb28e94a83
Continued work on the WAL
2025-11-17 21:52:44 +01:00
cozis
6126a2e932
Draft of wal.c/.h
2025-11-17 15:49:09 +01:00
cozis
eaa3f3a8a1
Implement FileTree serialization and deserialization routines
2025-11-17 15:02:22 +01:00
cozis
fbcfd80f6d
Add TODO.txt entry
2025-11-17 13:08:14 +01:00
cozis
b7fc855a80
Move miscellaneous files to the misc folder
2025-11-17 13:06:51 +01:00
cozis
cd865a5cdf
Simplify Features bullet points to make them easier to read
2025-11-17 13:04:56 +01:00
cozis
ec159a2c6a
Minor reorganization of test in the README.md
2025-11-17 13:03:01 +01:00
cozis
04a706dad9
Add code snippet to README.md
2025-11-17 13:01:30 +01:00
cozis
bc0a95a9a5
Turn TODO.txt in a list of checkboxes
2025-11-17 12:54:06 +01:00
cozis
4accabc4e2
Add Features paragraph to README.md
2025-11-17 12:48:52 +01:00
cozis
09f1ed4b3e
Reorganize types in ToastyFS.h by placing them near function interfaces that reference them
2025-11-17 11:50:22 +01:00
cozis
3fc1e12623
Modify Makefile clean rule to remove compilation artifacts by their extension (.exe, .out, ...), not their full name
2025-11-17 11:46:23 +01:00
cozis
46db334a2e
Resolve compilation errors and implement blocking API
2025-11-17 11:32:09 +01:00
cozis
ee05547981
Fix compilation errors
2025-11-16 16:16:54 +01:00
cozis
c6cac0155e
Change client.c to match the new ToastyFS.h API
2025-11-16 16:07:03 +01:00
cozis
b591408cc9
Fix some build errors
2025-11-16 13:01:08 +01:00
cozis
f7dc52ae8f
Add example of the blocking API
2025-11-16 12:21:31 +01:00
cozis
58d2d7def3
Polish API in ToastyFS.h
2025-11-16 11:59:58 +01:00
cozis
914419df6d
Add timeout logic to toastyfs_wait
2025-11-16 11:59:39 +01:00
cozis
91a2395448
Add README
2025-11-16 02:21:37 +01:00
cozis
e1cdc28d4d
Rename project to ToastyFS
2025-11-16 02:10:59 +01:00
cozis
a4a37b7a36
Minor fixes
2025-11-16 01:18:05 +01:00
cozis
7af1bc27b5
Fix value of CHUNK_SERVER_RECONNECT_TIME by expressing it in seconds, also change it to a runtime-modifiable value
2025-11-15 12:10:26 +01:00
cozis
11054cae86
Add new chunk hashes to the cs_add_list when creating or updating them in the chunk server
2025-11-15 10:55:11 +01:00
cozis
a366b46398
Bug fixes
2025-11-15 10:38:45 +01:00
cozis
a11740ab41
Fix uninitialized BinaryReader struct when parsing auth response message
2025-11-14 21:14:33 +01:00