[ 
https://issues.apache.org/jira/browse/CASSANDRA-7519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14124994#comment-14124994
 ] 

Ryan McGuire edited comment on CASSANDRA-7519 at 9/7/14 6:26 PM:
-----------------------------------------------------------------

I'm getting compilation errors from this on cassandra-2.1 HEAD (was it merged 
before it was ready? I still see this ticket as 'patch available'):

{code}
stress-build:
    [mkdir] Created dir: /home/ryan/git/datastax/cassandra/build/classes/stress
    [javac] Compiling 102 source files to 
/home/ryan/git/datastax/cassandra/build/classes/stress
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandPreDefinedMixed.java:60:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         return new SampledOpDistributionFactory<Command>(ratios, 
clustering)
    [javac]                ^
    [javac]   required: List<Pair<Command,Double>>,DistributionFactory
    [javac]   found: Map<Command,Double>,DistributionFactory
    [javac]   reason: actual argument Map<Command,Double> cannot be converted 
to List<Pair<Command,Double>> by method invocation conversion
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandPreDefinedMixed.java:61:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         {
    [javac]         ^
    [javac]   required: List<Pair<Command,Double>>,DistributionFactory
    [javac]   found: no arguments
    [javac]   reason: actual and formal argument lists differ in length
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandUser.java:67:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         return new SampledOpDistributionFactory<String>(ratios, 
clustering)
    [javac]                ^
    [javac]   required: List<Pair<String,Double>>,DistributionFactory
    [javac]   found: Map<String,Double>,DistributionFactory
    [javac]   reason: actual argument Map<String,Double> cannot be converted to 
List<Pair<String,Double>> by method invocation conversion
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandUser.java:68:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         {
    [javac]         ^
    [javac]   required: List<Pair<String,Double>>,DistributionFactory
    [javac]   found: no arguments
    [javac]   reason: actual and formal argument lists differ in length
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] Note: Some input files use or override a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 4 errors

BUILD FAILED
/home/ryan/git/datastax/cassandra/build.xml:735: Compile failed; see the 
compiler error output for details.
{code}


was (Author: enigmacurry):
I'm getting compilation errors from this on cassandra-2.1 HEAD:

{code}
stress-build:
    [mkdir] Created dir: /home/ryan/git/datastax/cassandra/build/classes/stress
    [javac] Compiling 102 source files to 
/home/ryan/git/datastax/cassandra/build/classes/stress
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandPreDefinedMixed.java:60:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         return new SampledOpDistributionFactory<Command>(ratios, 
clustering)
    [javac]                ^
    [javac]   required: List<Pair<Command,Double>>,DistributionFactory
    [javac]   found: Map<Command,Double>,DistributionFactory
    [javac]   reason: actual argument Map<Command,Double> cannot be converted 
to List<Pair<Command,Double>> by method invocation conversion
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandPreDefinedMixed.java:61:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         {
    [javac]         ^
    [javac]   required: List<Pair<Command,Double>>,DistributionFactory
    [javac]   found: no arguments
    [javac]   reason: actual and formal argument lists differ in length
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandUser.java:67:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         return new SampledOpDistributionFactory<String>(ratios, 
clustering)
    [javac]                ^
    [javac]   required: List<Pair<String,Double>>,DistributionFactory
    [javac]   found: Map<String,Double>,DistributionFactory
    [javac]   reason: actual argument Map<String,Double> cannot be converted to 
List<Pair<String,Double>> by method invocation conversion
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] 
/home/ryan/git/datastax/cassandra/tools/stress/src/org/apache/cassandra/stress/settings/SettingsCommandUser.java:68:
 error: constructor SampledOpDistributionFactory in class 
SampledOpDistributionFactory<T> cannot be applied to given types;
    [javac]         {
    [javac]         ^
    [javac]   required: List<Pair<String,Double>>,DistributionFactory
    [javac]   found: no arguments
    [javac]   reason: actual and formal argument lists differ in length
    [javac]   where T is a type-variable:
    [javac]     T extends Object declared in class SampledOpDistributionFactory
    [javac] Note: Some input files use or override a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 4 errors

BUILD FAILED
/home/ryan/git/datastax/cassandra/build.xml:735: Compile failed; see the 
compiler error output for details.
{code}

> Further stress improvements to generate more realistic workloads
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-7519
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7519
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Tools
>            Reporter: Benedict
>            Assignee: Benedict
>            Priority: Minor
>              Labels: tools
>             Fix For: 2.1.1
>
>
> We generally believe that the most common workload is for reads to 
> exponentially prefer most recently written data. However as stress currently 
> behaves we have two id generation modes: sequential and random (although 
> random can be distributed). I propose introducing a new mode which is 
> somewhat like sequential, except we essentially 'look back' from the current 
> id by some amount defined by a distribution. I may possibly make the position 
> only increment as it's first written to also, so that this mode can be run 
> from a clean slate with a mixed workload. This should allow is to generate 
> workloads that are more representative.
> At the same time, I will introduce a timestamp value generator for primary 
> key columns that is strictly ascending, i.e. has some random component but is 
> based off of the actual system time (or some shared monotonically increasing 
> state) so that we can again generate a more realistic workload. This may be 
> challenging to tie in with the new procedurally generated partitions, but I'm 
> sure it can be done without too much difficulty.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to