DeepAI AI Chat
Log In Sign Up

Synthesizing Database Programs for Schema Refactoring

by   Yuepeng Wang, et al.
The University of Texas at Austin

Many programs that interact with a database need to undergo schema refactoring several times during their life cycle. Since this process typically requires making significant changes to the program's implementation, schema refactoring is often non-trivial and error-prone. Motivated by this problem, we propose a new technique for automatically synthesizing a new version of a database program given its original version and the source and target schemas. Our method does not require manual user guidance and ensures that the synthesized program is equivalent to the original one. Furthermore, our method is quite efficient and can synthesize new versions of database programs (containing up to 263 functions) that are extracted from real-world web applications with an average synthesis time of 69.4 seconds.


page 1

page 2

page 3

page 4


Transforming Coroutining Logic Programs into Equivalent CHR Programs

We extend a technique called Compiling Control. The technique transforms...

Automatic Synthesis of Parallel and Distributed Unix Commands with KumQuat

We present KumQuat, a system for automatically synthesizing parallel and...

Right-Adjoints for Datalog Programs, and Homomorphism Dualities over Restricted Classes

A Datalog program can be viewed as a syntactic specification of a functo...

Cobra: A Framework for Cost Based Rewriting of Database Applications

Database applications are typically written using a mixture of imperativ...

Verifying Equivalence of Database-Driven Applications

This paper addresses the problem of verifying equivalence between a pair...

Dynamic Software Updates for Unmodified Browsers through Multi-Version Execution

In this paper, we present the design, implementation, and evaluation of ...

Controller Synthesis for Golog Programs over Finite Domains with Metric Temporal Constraints

Executing a Golog program on an actual robot typically requires addition...