stress.py enhancements
----------------------

                 Key: CASSANDRA-542
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-542
             Project: Cassandra
          Issue Type: Improvement
            Reporter: Scott White
            Priority: Minor
             Fix For: 0.5


this patch makes the following improvements over the existing stress.py (with 
the patch in CASSANDRA-514):

1) uses a shared memory array to rectify the fact that with the multiproc 
change in CASSANDRA-514 the updates to the op counts are not getting pooled 
correctly 
2) optionally allows the client to do round robin requests thus preventing 
cassandra from having to take on extra load balancing requests
3) refactors code so there is no duplicate code making it easier to support any 
new operations people may want to add
4) stress.py can now be used to generate performance graphs. It adds one new 
field which is the total number of operations completed for each interval which 
is required to show aggregate performance across intervals. It also does an 
append so that data points can be collected for each interval. Furthermore, the 
date foramt is now CSV so for easy import into Excel, R, etc.

Generating performance graphs can be generated in 5 easy steps:
1. nosetests --tests=system.stress:Stress.insert &
2. tail -f /tmp/progress_insert (just to watch and make sure it's working)
3. fire up R (www.r-project.org/)
4. w = read.table("/tmp/progress_insert",sep=",")
5. plot(w[,3]/60,w[,2],ylim=c(0,10000),xlab="Elapsed time 
(minutes)",ylab="Writes / sec", type='l')

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to