The paper presents IsoPredict, a dynamic predictive analysis approach for detecting unserializable behaviors in weakly isolated transactional data store applications. Key highlights:
IsoPredict takes an observed serializable execution history as input and generates and solves SMT constraints to find a feasible, unserializable execution that is valid under a weak isolation model (causal or read committed).
IsoPredict introduces novel techniques to handle divergent application behavior, solve mutually recursive sets of constraints, and balance coverage, precision, and performance.
The evaluation on four transactional data store benchmarks shows that IsoPredict can effectively predict unserializable behaviors, with over 99% of the predictions being feasible executions.
IsoPredict is the first predictive analysis approach for transactional data store applications, which present unique challenges compared to prior work on shared-memory programs.
IsoPredict's predictive analysis approach is in principle suitable for analyzing executions from any data store, although demonstrating this is outside the scope of this paper.
A otro idioma
del contenido fuente
arxiv.org
Ideas clave extraídas de
by Chujun Geng,... a las arxiv.org 04-09-2024
https://arxiv.org/pdf/2404.04621.pdfConsultas más profundas