VLDB2025
Using Read Promotion and Mixed Isolation Levels for Performant Yet Serializable Execution of Transaction Programs
Brecht Vandevoort, Alan D. Fekete, Bas Ketsman, Frank Neven, Stijn Vansummeren
摘要
We propose a theory that can determine the lowest isolation level that can be allocated to each transaction program in an application in a mixed-isolation-level setting, to guarantee that all executions will be serializable and thus preserve all integrity constraints, even those that are not explicitly declared. This extends prior work applied to completely known transactions, to deal with the realistic situation where transactions are generated by running programs with parameters that are not known in advance. Using our theory, we propose an optimization method that allows for high throughput while ensuring that all executions are serializable. Our method is based on searching for application code modifications that are semantics-preserving while improving the isolation level allocation. We illustrate our approach to the SmallBank benchmark.