Commit Graph

16 Commits

Author SHA1 Message Date
fd3a19dc08 feat: finished replication, testing, and go fmt 2025-04-29 15:03:03 -06:00
f9e332096c feat: Update client sdk (Go) with smart connection logic
- Client SDK will connect to a node, get node information and decide if
  it needs to connect to a primary for writes, or pick a replica to
  connect to for reads
- Updated service with a GetNodeInfo rpc call which returns information
  about the node to enable the smart selection code in the sdks
2025-04-29 15:03:03 -06:00
4429836929 feat: Add replication manager to manage primary/replica
- Primary nodes will connect to the WAL for observations, start a gRPC
  server for replication, and shutdown properly
- Replica nodes will connect to the primary, apply received entries to
  local storage, and enforce read-only mode for consistency
- Integrates the decision primary/replica/standalone into the kevo cli
2025-04-29 15:03:03 -06:00
c1dcf2d6ce
fix: add the retry logic
Some checks failed
Go Tests / Run Tests (1.24.2) (push) Failing after 5m11s
2025-04-26 11:28:59 -06:00
ae75f2935f
fix: fix the WAL is closed errors on rotation in tight loops, increase durability
Some checks failed
Go Tests / Run Tests (1.24.2) (push) Failing after 5m5s
2025-04-26 00:15:50 -06:00
7e226825df
fix: engine refactor bugfix fest, go fmt
All checks were successful
Go Tests / Run Tests (1.24.2) (push) Successful in 9m48s
2025-04-25 23:36:08 -06:00
0637c40a40
feat: big refactor cleaning up the engine code
Some checks failed
Go Tests / Run Tests (1.24.2) (push) Failing after 5m4s
2025-04-23 22:45:16 -06:00
2b90635021
test: add tests for edge case putting a key after delete 2025-04-23 16:49:38 -06:00
a0a1c0512f
chore: formatting
All checks were successful
Go Tests / Run Tests (1.24.2) (push) Successful in 9m50s
2025-04-22 14:09:54 -06:00
e7974e008d
feat: enhance wal recover statistics 2025-04-22 14:09:45 -06:00
fbea5da627 chore: renaming packages after move to github org 2025-04-22 11:01:33 -06:00
001934e7b5
refactor: optimize two pass deduping into a single pass across the codebase
All checks were successful
Go Tests / Run Tests (1.24.2) (push) Successful in 9m38s
2025-04-21 16:27:54 -06:00
1a0de922af refactor: use memtable sorted order iterator to write and dedup in a single pass 2025-04-21 14:53:03 -06:00
4e813aa3fd fix: flushing a memtable dedups keys as its processing them before creating the SSTable 2025-04-21 14:53:03 -06:00
25fe3b1771
chore: i am an idiot, forgot to change the full path parts
Some checks failed
Go Tests / Run Tests (1.24.2) (push) Has been cancelled
2025-04-20 14:53:39 -06:00
6fc3be617d
feat: Initial release of kevo storage engine.
Some checks failed
Go Tests / Run Tests (1.24.2) (push) Has been cancelled
Adds a complete LSM-based storage engine with these features:
- Single-writer based architecture for the storage engine
- WAL for durability, and hey it's configurable
- MemTable with skip list implementation for fast read/writes
- SSTable with block-based structure for on-disk level-based storage
- Background compaction with tiered strategy
- ACID transactions
- Good documentation (I hope)
2025-04-20 14:06:50 -06:00