Concurrency bugs in open source software: a case study

Abstract Concurrent programming puts demands on software debugging and testing, as concurrent software may exhibit problems not present in sequential software, e.g., deadlocks and race conditions. In aiming to increase efficiency and effectiveness of debugging and bug-fixing for concurrent software,...

Full description

Bibliographic Details
Main Authors: Sara Abbaspour Asadollah, Daniel Sundmark, Sigrid Eldh, Hans Hansson
Format: Article
Language:English
Published: Brazilian Computing Society (SBC) 2017-04-01
Series:Journal of Internet Services and Applications
Subjects:
Online Access:http://link.springer.com/article/10.1186/s13174-017-0055-2
_version_ 1818384198375833600
author Sara Abbaspour Asadollah
Daniel Sundmark
Sigrid Eldh
Hans Hansson
author_facet Sara Abbaspour Asadollah
Daniel Sundmark
Sigrid Eldh
Hans Hansson
author_sort Sara Abbaspour Asadollah
collection DOAJ
description Abstract Concurrent programming puts demands on software debugging and testing, as concurrent software may exhibit problems not present in sequential software, e.g., deadlocks and race conditions. In aiming to increase efficiency and effectiveness of debugging and bug-fixing for concurrent software, a deep understanding of concurrency bugs, their frequency and fixing-times would be helpful. Similarly, to design effective tools and techniques for testing and debugging concurrent software, understanding the differences between non-concurrency and concurrency bugs in real-word software would be useful. This paper presents an empirical study focusing on understanding the differences and similarities between concurrency bugs and other bugs, as well as the differences among various concurrency bug types in terms of their severity and their fixing time, and reproducibility. Our basis is a comprehensive analysis of bug reports covering several generations of five open source software projects. The analysis involves a total of 11860 bug reports from the last decade, including 351 reports related to concurrency bugs. We found that concurrency bugs are different from other bugs in terms of their fixing time and severity while they are similar in terms of reproducibility. Our findings shed light on concurrency bugs and could thereby influence future design and development of concurrent software, their debugging and testing, as well as related tools.
first_indexed 2024-12-14T03:18:27Z
format Article
id doaj.art-5d29c66446cb49a6b4a07701f1f6c7ff
institution Directory Open Access Journal
issn 1867-4828
1869-0238
language English
last_indexed 2024-12-14T03:18:27Z
publishDate 2017-04-01
publisher Brazilian Computing Society (SBC)
record_format Article
series Journal of Internet Services and Applications
spelling doaj.art-5d29c66446cb49a6b4a07701f1f6c7ff2022-12-21T23:19:05ZengBrazilian Computing Society (SBC)Journal of Internet Services and Applications1867-48281869-02382017-04-018111510.1186/s13174-017-0055-2Concurrency bugs in open source software: a case studySara Abbaspour Asadollah0Daniel Sundmark1Sigrid Eldh2Hans Hansson3Mälardalen UniversityMälardalen UniversityEricsson ABMälardalen UniversityAbstract Concurrent programming puts demands on software debugging and testing, as concurrent software may exhibit problems not present in sequential software, e.g., deadlocks and race conditions. In aiming to increase efficiency and effectiveness of debugging and bug-fixing for concurrent software, a deep understanding of concurrency bugs, their frequency and fixing-times would be helpful. Similarly, to design effective tools and techniques for testing and debugging concurrent software, understanding the differences between non-concurrency and concurrency bugs in real-word software would be useful. This paper presents an empirical study focusing on understanding the differences and similarities between concurrency bugs and other bugs, as well as the differences among various concurrency bug types in terms of their severity and their fixing time, and reproducibility. Our basis is a comprehensive analysis of bug reports covering several generations of five open source software projects. The analysis involves a total of 11860 bug reports from the last decade, including 351 reports related to concurrency bugs. We found that concurrency bugs are different from other bugs in terms of their fixing time and severity while they are similar in terms of reproducibility. Our findings shed light on concurrency bugs and could thereby influence future design and development of concurrent software, their debugging and testing, as well as related tools.http://link.springer.com/article/10.1186/s13174-017-0055-2Concurrency bugsBug severityFixing timeOpen source softwareApache HadoopApache ZooKeeper
spellingShingle Sara Abbaspour Asadollah
Daniel Sundmark
Sigrid Eldh
Hans Hansson
Concurrency bugs in open source software: a case study
Journal of Internet Services and Applications
Concurrency bugs
Bug severity
Fixing time
Open source software
Apache Hadoop
Apache ZooKeeper
title Concurrency bugs in open source software: a case study
title_full Concurrency bugs in open source software: a case study
title_fullStr Concurrency bugs in open source software: a case study
title_full_unstemmed Concurrency bugs in open source software: a case study
title_short Concurrency bugs in open source software: a case study
title_sort concurrency bugs in open source software a case study
topic Concurrency bugs
Bug severity
Fixing time
Open source software
Apache Hadoop
Apache ZooKeeper
url http://link.springer.com/article/10.1186/s13174-017-0055-2
work_keys_str_mv AT saraabbaspourasadollah concurrencybugsinopensourcesoftwareacasestudy
AT danielsundmark concurrencybugsinopensourcesoftwareacasestudy
AT sigrideldh concurrencybugsinopensourcesoftwareacasestudy
AT hanshansson concurrencybugsinopensourcesoftwareacasestudy