Title
Automatic Detection of Performance Bugs in Database Systems using Equivalent Queries
Abstract
Because modern data-intensive applications rely heavily on database systems (DBMSs), developers extensively test these systems to elim-inate bugs that negatively affect functionality. Besides functional bugs, however, there is another important class of faults that negatively affect the response time of a DBMS, known as performance bugs. Despite their potential impact on end-user experience, performance bugs have received considerably less attention than functional bugs. To fill this gap, we present Amoeba, a technique and tool for automatically detecting performance bugs in DBMSs. The core idea behind Amoeba is to construct semantically equivalent query pairs, run both queries on the DBMS under test, and compare their response time. If the queries exhibit significantly different response times, that indicates the possible presence of a performance bug in the DBMS. To construct equivalent queries, we propose to use a set of structure and expression mutation rules especially targeted at un-covering performance bugs. We also introduce feedback mechanisms for improving the effectiveness and efficiency of the approach. We evaluate Amoeba on two widely-used DBMSs, namely PostgreSQL and CockroachDB, with promising results: Amoeba has so far dis-covered 39 potential performance bugs, among which developers have already confirmed 6 bugs and fixed 5 bugs.
Year
DOI
Venue
2022
10.1145/3510003.3510093
2022 IEEE/ACM 44th International Conference on Software Engineering (ICSE)
Keywords
DocType
ISSN
Differential testing,database testing,query optimization
Conference
0270-5257
ISBN
Citations 
PageRank 
978-1-6654-9589-9
0
0.34
References 
Authors
15
4
Name
Order
Citations
PageRank
Xinyu Liu11411.75
Qi Zhou200.34
Joy Arulraj318312.17
Alessandro Orso43550172.85