info.jerrinot:rohypnol-maven

Rohypnol - Rohypnol pills for your JVM

License

License

Categories

Categories

Maven Build Tools
GroupId

GroupId

info.jerrinot
ArtifactId

ArtifactId

rohypnol-maven
Last Version

Last Version

0.1
Release Date

Release Date

Type

Type

maven-plugin
Description

Description

Rohypnol - Rohypnol pills for your JVM

Download rohypnol-maven

How to add to project

<plugin>
    <groupId>info.jerrinot</groupId>
    <artifactId>rohypnol-maven</artifactId>
    <version>0.1</version>
</plugin>

Dependencies

compile (4)

Group / Artifact Type Version
org.apache.maven : maven-plugin-api jar 3.5.0
org.apache.maven.plugin-tools : maven-plugin-annotations jar 3.5
org.apache.maven : maven-project jar 2.2.1
info.jerrinot : rohypnol-core jar 0.1

Project Modules

There are no modules declared in this project.

Rohypnol

Feed your junit tests with rohypnol and reveal race conditions!

The idea is to use a Java-agent to insert randomized pauses into your code. This should reveal race-conditions.

Usage:

Start your JVM with -javaagent:<path>/rohypnol-1.0-SNAPSHOT-allinone.jar

Configration:

Currently hard-coded. It instruments only classes starting with com.hazelcast and parameters are in Constants

TODO:

  • Configurable strategy to select classes & methods to instrument.
  • Configurable {White/Black}list to feed the pill to selected threads only.
  • Multiple strategies to generate sleep duration. Currently it always uses uniform distribution.

Credits:

@Holmistr came-up with the idea. Implementation bugs are mine.

Versions

Version
0.1