Commit Graph

11 Commits

Author SHA1 Message Date
374d0dde65
refactor: improve bootstrap API with proper interface-based design for testing
All checks were successful
Go Tests / Run Tests (1.24.2) (pull_request) Successful in 9m50s
- Convert anonymous interface dependency in BootstrapManager to the new EntryApplier interface
- Update service layer code to use interfaces instead of concrete types
- Fix tests to properly verify bootstrap behavior
- Extend test coverage with proper root cause analysis for failing tests
- Fix persistence tests in replica_registration to explicitly handle delayed persistence
2025-04-26 15:49:39 -06:00
33ddfeeb64
fix: use Lamport clocks consistently across WAL operations
Ensure proper Lamport clock integration across batch operations and sequence number handling:
- Add Lamport clock support to Batch.Write for consistent replication timestamps
- Fix potential sequence number inconsistencies in WAL operations
- Update WAL tests to properly verify sync mode behaviors
- Fix Sequence numbering to appropriately handle Lamport clock timestamps
2025-04-26 12:24:50 -06:00
02febadf5d
feat: implement WAL replicator and entry serialization
- Add WAL replicator component with entry capture, buffering, and subscriptions
- Implement WAL entry serialization with checksumming
- Add batch serialization for network-efficient transfers
- Implement proper concurrency control with mutex protection
- Add utility functions for entry size estimation
- Create comprehensive test suite
2025-04-26 11:54:19 -06:00
c0bfd835f7
feat: implement replication hook point in WAL and Lamport clocks…
Some checks failed
Go Tests / Run Tests (1.24.2) (pull_request) Failing after 5m1s
- Add Lamport clock implementation for logical timestamps
- Define ReplicationHook interface in WAL package
- Extend WAL to use Lamport clock for timestamps
- Add notification hooks for WAL entries and batches
- Update WAL initialization to support replication
- Add tests for replication hooks and clocks
2025-04-26 11:42:49 -06:00
8e04c2cea3
fix: fix the build error from before
Some checks failed
Go Tests / Run Tests (1.24.2) (push) Failing after 5m2s
2025-04-26 04:11:32 -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
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
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