Infra Params

Alex Averbuch alex.averbuch at neotechnology.com
Fri Jul 8 09:01:53 UTC 2016


both of the following variants result in similar errors

---------------------------------------------------------------------------------
--- VARIANT 1 : BenchmarkParams in abstract base class ---
---------------------------------------------------------------------------------

@State( Scope.Benchmark )

public abstract class AbstractCoreBenchmark

{

    @Setup

    public void setUp( BenchmarkParams params )

    {

    // setup

    }


    @TearDown

    public void tearDown()

    {

        // tear down

    }


    @State( Scope.Thread )

    public static class RNGState

    {

        public final ThreadLocalRandom rng = ThreadLocalRandom.current();

    }

}


public class RelationshipRead extends AbstractCoreBenchmark

{

    @Setup

    public void setup( )

    {

        // setup

    }


    @State( Scope.Thread )

    public static class TxState

    {

        // open/close transactions

    }


    @Benchmark

    @BenchmarkMode( Mode.SampleTime )

    public int countRelationships( TxState txState, RNGState rngState )

    {

    // count relationships

    }

}



ERROR]
/Users/me/IdeaProjects/jmh-benchmarks/target/generated-sources/annotations/org/db/bench/core/generated/RelationshipRead_countRelationships_jmhTest.java:[426,16]
method setUp in class org.db.bench.core.AbstractCoreBenchmark cannot be
applied to given types;

  required: org.openjdk.jmh.infra.BenchmarkParams

  found:
org.openjdk.jmh.infra.generated.BenchmarkParams_jmhType,org.openjdk.jmh.infra.generated.BenchmarkParams_jmhType

  reason: actual and formal argument lists differ in length


---------------------------------------------------------------------
--- VARIANT 2 : BenchmarkParams in child class ---
---------------------------------------------------------------------

@State( Scope.Benchmark )

public abstract class AbstractCoreBenchmark

{

    @Setup

    public void setUp( )

    {

    // setup

    }


    @TearDown

    public void tearDown()

    {

        // tear down

    }


    @State( Scope.Thread )

    public static class RNGState

    {

        public final ThreadLocalRandom rng = ThreadLocalRandom.current();

    }

}


public class RelationshipRead extends AbstractCoreBenchmark

{

    @Setup

    public void setup( BenchmarkParams params )

    {

        // setup

    }


    @State( Scope.Thread )

    public static class TxState

    {

        // open/close transactions

    }


    @Benchmark

    @BenchmarkMode( Mode.SampleTime )

    public int countRelationships( TxState txState, RNGState rngState )

    {

    // count relationships

    }

}


[ERROR]
/Users/me/IdeaProjects/jmh-benchmarks/target/generated-sources/annotations/org/db/bench/core/generated/RelationshipRead_countRelationships_jmhTest.java:[427,16]
method setup in class org.db.bench.core.RelationshipRead cannot be applied
to given types;

  required: org.openjdk.jmh.infra.BenchmarkParams

  found:
org.openjdk.jmh.infra.generated.BenchmarkParams_jmhType,org.openjdk.jmh.infra.generated.BenchmarkParams_jmhType

  reason: actual and formal argument lists differ in length


More information about the jmh-dev mailing list