skip to main content
10.1145/2635868.2661670acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
research-article

Omen+: a precise dynamic deadlock detector for multithreaded Java libraries

Published: 11 November 2014 Publication History

Abstract

Designing thread-safe libraries without concurrency defects can be a challenging task. Detecting deadlocks while invoking methods in these libraries concurrently is hard due to the possible number of method invocation combinations, the object assignments to the parameters and the associated thread interleavings. In this paper, we describe the design and implementation of OMEN+ that takes a multithreaded library as the input and detects true deadlocks in a scalable manner. We achieve this by automatically synthesizing relevant multithreaded tests and analyze the associated execution traces using a precise deadlock detector. We validate the usefulness of OMEN+ by applying it on many multithreaded Java libraries and detect a number of deadlocks even in documented thread-safe libraries. The tool is available for free download at http://www.csa.iisc.ernet.in/~sss/tool/omenplus.html.

References

[1]
Y. Cai and W. K. Chan. Magicfuzzer: Scalable deadlock detection for large-scale applications. ICSE 2012.
[2]
P. Joshi, C.-S. Park, K. Sen, and M. Naik. A randomized dynamic program analysis technique for detecting real deadlocks. PLDI ’09.
[3]
C. Pacheco and M. D. Ernst. Randoop: Feedback -directed random testing for java. OOPSLA ’07.
[4]
M. Pradel and T. R. Gross. Fully automatic and precise detection of thread safety violations. PLDI ’12.
[5]
M. Samak and M. K. Ramanathan. Multithreaded test synthesis for deadlock detection. OOPSLA ’14.
[6]
M. Samak and M. K. Ramanathan. Trace driven dynamic deadlock detection and reproduction. PPoPP ’14.
[7]
R. Vallee-Rai, E. Gagnon, L. Hendren, P. Lam, P. Pominville, and V. Sundaresan. Optimizing java bytecode using the soot framework: Is it feasible? In CC, 2000.
[8]
A. Williams, W. Thies, and M. D. Ernst. Static deadlock detection for java libraries. In ECOOP’05.

Cited By

View all
  • (2021)Statically driven generation of concurrent tests for thread‐safe classesSoftware Testing, Verification and Reliability10.1002/stvr.177431:4Online publication date: 4-May-2021
  • (2019)Coverage-Driven Test Generation for Thread-Safe Classes via Parallel and Conflict Dependencies2019 12th IEEE Conference on Software Testing, Validation and Verification (ICST)10.1109/ICST.2019.00034(264-275)Online publication date: Apr-2019
  • (2019)Efficient Test Case Generation for Thread-Safe ClassesIEEE Access10.1109/ACCESS.2019.29015887(26984-26995)Online publication date: 2019
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
FSE 2014: Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering
November 2014
856 pages
ISBN:9781450330565
DOI:10.1145/2635868
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 11 November 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. concurrency
  2. deadlock detection
  3. dynamic analysis

Qualifiers

  • Research-article

Conference

SIGSOFT/FSE'14
Sponsor:

Acceptance Rates

Overall Acceptance Rate 17 of 128 submissions, 13%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 25 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Statically driven generation of concurrent tests for thread‐safe classesSoftware Testing, Verification and Reliability10.1002/stvr.177431:4Online publication date: 4-May-2021
  • (2019)Coverage-Driven Test Generation for Thread-Safe Classes via Parallel and Conflict Dependencies2019 12th IEEE Conference on Software Testing, Validation and Verification (ICST)10.1109/ICST.2019.00034(264-275)Online publication date: Apr-2019
  • (2019)Efficient Test Case Generation for Thread-Safe ClassesIEEE Access10.1109/ACCESS.2019.29015887(26984-26995)Online publication date: 2019
  • (2019)Violat: Generating Tests of Observational Refinement for Concurrent ObjectsComputer Aided Verification10.1007/978-3-030-25543-5_30(534-546)Online publication date: 12-Jul-2019
  • (2018)Effectiveness and challenges in generating concurrent tests for thread-safe classesProceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering10.1145/3238147.3238224(64-75)Online publication date: 3-Sep-2018
  • (2016)LockPeeker: detecting latent locks in Java APIsProceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering10.1145/2970276.2970355(368-378)Online publication date: 25-Aug-2016
  • (2016)Coverage-driven test code generation for concurrent classesProceedings of the 38th International Conference on Software Engineering10.1145/2884781.2884876(1121-1132)Online publication date: 14-May-2016
  • (2015)Synthesizing tests for detecting atomicity violationsProceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering10.1145/2786805.2786874(131-142)Online publication date: 30-Aug-2015
  • (2015)JaConTeBeProceedings of the 30th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2015.87(178-189)Online publication date: 9-Nov-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media