This paper focuses on the problem of implementing web applications on top of weakly consistent geo-replicated systems. Several techniques, such as CRDTs, have been proposed to achieve state convergence on a per-object and per data type basis. However, that does not guarantee application correctness, as convergence rules applied individually at each object may lead to an invalid state. We advocate that it is possible to address these problems and implement correct applications under weak consistency. To that end, it is necessary to combine CRDTs with novel semantics, judiciously select the CRDTs that are used by applications, and transform application operations to guarantee that convergence rules, applied on a per-object basis, always lead to valid application states. Achieving this is complex and requires tools to help programmers tame the complexity of programming on top of weak consistency and make the technology more accessible. In the presentation of this work we make a demonstration of a prototype tool that is capable of detecting concurrency conflicts on applications and propose transformations to make them conflitc free.
|Title of host publication||Proceedings of the 2nd Workshop on the Principles and Practice of Consistency for Distributed Data, PaPoC 2016|
|Publication status||Published - 18 Apr 2016|
- Weak consistency