Software debugging is a time-consuming and challenging
process. Supporting debugging has been a focus of the software
engineering field since its inception with numerous empirical studies,
theories, and tools to support developers in this
task. \emph{Performance} bugs and performance debugging is a sub-genre
of debugging that has received less attention.
In this paper we contribute an empirical case study of performance bug
diagnosis in the WiredTiger project, the default database engine
behind MongoDB.
We perform an in-depth analysis of 44
Jira tickets documenting WiredTiger performance-related issues.
We investigate how developers diagnose performance bugs: what
information they collect, what tools they use, and what processes
they follow.
Our findings show that developers spend the majority of their performance
debugging time chasing outlier events, such as latency spikes and throughput
drops. Yet, they are not properly supported by existing performance debugging
tools in this task. We also observe that developers often use tools without
knowing in advance whether the obtained information will be relevant to
debugging the problem. Therefore, we believe developers can benefit from tools
that can be used for unstructured exploration of performance data, rather than
for answering specific questions.
Tue 6 NovDisplayed time zone: Guadalajara, Mexico City, Monterrey change
13:30 - 15:00 | |||
13:30 22mTalk | CHiP: A Configurable Hybrid Parallel Covering Array Constructor Journal-First DOI | ||
13:52 22mTalk | Learning to Sample: Exploiting Similarities Across Environments to Learn Performance Models for Configurable Systems Research Papers Pooyan Jamshidi University of South Carolina, Miguel Velez Carnegie Mellon University, USA, Christian Kästner Carnegie Mellon University, Norbert Siegmund Bauhaus-University Weimar | ||
14:15 22mTalk | Performance Comprehension at WiredTiger Research Papers Alexandra (Sasha) Fedorova University of British Columbia, Craig Mustard University of British Columbia, Canada, Ivan Beschastnikh Computer Science, University of British Columbia, Julia Rubin University of British Columbia, Augustine Wong University of British Columbia, Canada, Svetozar Miucin University of British Columbia, Canada, Louis Ye University of British Columbia, Canada | ||
14:37 22mTalk | MemFix: Static Analysis-Based Repair of Memory Deallocation Errors for C Research Papers Junhee Lee Korea University, South Korea, Seongjoon Hong Korea University, Hakjoo Oh Korea University |