Jepsen: Capela dda5892
17 days ago
- #programming-languages
- #database-consistency
- #distributed-systems
- Capela is a distributed, general-purpose programming environment aiming to unify processing and storage in a single system.
- Capela programs are written in a Python dialect with a sophisticated type system, supporting distributed classes with automatic replication and persistence.
- Capela ensures transactional method invocation with Strong Serializable semantics for pure functions and state mutations.
- Capela is divided into partitions, each a single-threaded state machine with a leader for coordinating writes.
- Jepsen testing revealed multiple issues in Capela, including language semantics, crashes, panics, and safety errors like lost updates and partition disappearance.
- Key unresolved issues include semi-lazy assignment order, unset Env panics, replication lag crashes, and performance degradation.
- Capela aims to resolve these issues before its first public release, focusing on safety, fault tolerance, and Python compatibility.