diff --git a/doc/index.html b/doc/index.html
index 936790eda8660d0a54d48a63464bc8b699400abe..a2ef77a3bbf12c6157123a3fe3a9750abda95ebc 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -11,8 +11,7 @@
 <UL>
 <LI><A href="#overview">Overview</A>
 <LI><A href="#download">Download YCSB</A>
-<LI><A href="#building">Building YCSB</A>
-<LI><A href="#running">Running a workload</A>
+<LI><A href="#gettingstarted">Getting started</A>
 <LI><A href="#extending">Extending YCSB</A>
 </UL>
 <HR>
@@ -52,284 +51,13 @@ of each system (for example, as latency versus throughput curves) to see when on
 <HR>
 <A name="download">
 <H2>Download YCSB</H2>
-... more information soon ...
+YCSB is available
+at <A HREF="http://wiki.github.com/brianfrankcooper/YCSB/">http://wiki.github.com/brianfrankcooper/YCSB/</A>. 
 <HR>
-<a name="building">
-<H2>Building YCSB</H2>
-To build YCSB, you need to build:
-<UL>
-<LI>The YCSB Client
-<LI>Your DB interface layer
-</UL>
-The YCSB distribution can be built with <a href="http://ant.apache.org">ant</a>:
-<pre>
-  % cd ycsb
-  % ant
-</pre>
-If your build was successful, you should be able to run the Client to get the usage message:
-<pre>
-  % java -cp build/ycsb.jar com.yahoo.ycsb.Client
-Usage: java com.yahoo.ycsb.Client [options]
-Options:
-  -threads n: execute using n threads (default: 1) - can also be specified as the 
-              "threadcount" property using -p
-  -target n: attempt to do n operations per second (default: unlimited) - can also
-             be specified as the "target" property using -p
-  -load:  run the loading phase of the workload
-  -t:  run the transactions phase of the workload (default)
-  -db dbname: specify the name of the DB to use (default: com.yahoo.ycsb.BasicDB) - 
-              can also be specified as the "db" property using -p
-  -P propertyfile: load properties from the given file. Multiple files can
-                   be specified, and will be processed in the order specified
-  -p name=value:  specify a property to be passed to the DB and workloads;
-                  multiple properties can be specified, and override any
-                  values in the propertyfile
-  -s:  show status during run (default: no status)
-  -l label:  use label for status (e.g. to label one experiment out of a whole batch)
-
-Required properties:
-  recordcount: how many records in the database
-  operationcount: how many transactions to execute
-  workload: the name of the workload class to use (e.g. com.yahoo.ycsb.workloads.CoreWorkload)
-</pre>
-<HR>
-<a name="running">
-<H2>Running a workload</H2>
-There are 6 steps to running a workload:
-<OL>
-<LI>Set up the database system to test
-<LI>Choose the appropriate DB interface layer
-<LI>Choose the appropriate workload
-<LI>Choose the appropriate runtime parameters (number of client threads, target throughput, etc.)
-<LI>Load the data
-<LI>Execute the workload
-</OL>
-The steps described here assume you are running a single client server. This should be sufficient for small to medium clusters (e.g. 10 or so machines). For much larger clusters, you may
-have to run multiple clients on different servers to generate enough load. Similarly, loading a database may be faster in some cases using multiple client machines. For more details on
-running multiple clients in parallel, see <A href="parallelclients.html">here</A>.
-<H3>Step 1. Set up the database system to test</H3>
-The first step is to set up the database system you wish to test. This can be done on a single machine or a cluster, depending on the configuration you wish to benchmark.
-<P>
-You must also create or set up tables/keyspaces/storage buckets to store records. The details vary according to each database system, and depend on the workload you wish
-to run. Before the YCSB Client runs, the tables must be created, since the Client itself will not request to create the tables. This is because for some systems, there
-is a manual (human-operated) step to create tables, and for other systems, the table must be created before the database cluster is started.
-<P>
-The tables that must be created depends on the workload. For CoreWorkload, the YCSB Client will assume that there is a "table" called "usertable" with a 
-flexible schema: columns can be added at runtime as desired. This "usertable" can be mapped into whatever storage container is appropriate. For example, in MySQL you would "CREATE TABLE," in 
-Cassandra you would define a keyspace in the Cassandra configuration, and so on. The database interface layer (described in step 2) will receive requests for
-reading or writing records in "usertable" and translate them into requests for the actual storage you have allocated. This may mean that you have to provide 
-information for the database interface layer to help it understand what the structure of the underlying storage is. For example, in Cassandra, you must define
-"column families" in addition to keyspaces. Thus, it is necessary to create a column family and give the family some name (for example, you might use "values.") Then,
-the database access layer will need to know to refer to the "values" column family, either because the string "values" is passed in as a property, or because it is
-hardcoded in the database interface layer. 
-<H3>Step 2. Choose the appropriate DB interface layer</H3>
-The DB interface layer is a java class that execute read, insert, update, delete and scan calls generated by the YCSB Client into calls against your database's API. This class is a
-subclass of the abstract DB class in the com.yahoo.ycsb package. The DB interface layer is not built as part of building YCSB; you must build it separately. Once you have built the interface layer,
-you will specify the class name of the layer on the command line when you run YCSB Client, and the Client will dynamically load your interface class. Any properties specified on the command line, or
-in parameter files specified on the command line, will be passed to the DB interface instance, and can be used to configure the layer (for example, to tell it the hostname of the database you are benchmarking.)
-<P>
-The YCSB Client is distributed with a simple dummy interface layer, com.yahoo.ycsb.BasicDB. This layer just prints the operations it would have executed to System.out. It can be useful for ensuring
-that the client is operating properly, and for debugging your workloads.
-<P>
-Other sample DB interface layer classes are distributed in src/com/yahoo/ycsb/db. To build those classes, run:
-<pre>
-% ant dbcompile
-</pre>
-Note that these classes will not be built using a normal ant execution, and not included in the resulting ycsb.jar. Thus, to use these classes, you will need
-to 1. have them on your classpath, and 2. have any required libraries also on your classpath. For example, the Cassandra database interface layer is com.yahoo.ycsb.db.CassandraClient, and requires the libthrift.jar
-to be accessible on your classpath.
-<P>
-For more details about implementing a DB interface layer, see <a href="dblayer.html">here</a>.
-<h3>Step 3. Choose the appropriate workload</h3>
-The workload defines the data that will be loaded into the database during the <I>loading</I> phase, and the operations that will be executed against the data set during the <I>transaction</I> phase.
-
-Typically, a workload is a combination of:
-<UL>
-<LI>Workload java class (subclass of com.yahoo.ycsb.Workload)
-<LI>Parameter file (in the Java Properties format)
-</UL>
-Because the properties of the dataset must be known during the <i>loading</i> phase (so that the proper kind of record can be constructed and inserted) and during the <I>transaction</I> phase (so 
-that the correct record ids and fields can be referred to) a single set of properties is shared among both phases. Thus the parameter file is used in both phases. The 
-workload java class uses those properties to either insert records (<i>loading</i> phase) or execute transactions against those records (<i>transaction</i> phase). The choice
-of which phase to run is based on a parameter you specify when you run the YCSB Client tool.
-<p>
-You specify both the java class and the parameter file on the command line when you run the YCSB Client. The Client will dynamically load your workload class, pass
-it the properties from the parameters file (and any additional properties specified on the command line) and then execute the workload. This happens both for the <I>loading</I> and <I>transaction</I> phases,
-as the same properties and workload logic applies to both. For example, if the <I>loading</I> phase creates records with 10 fields, then the <i>transaction</I> phase must know that there are 10 fields
-it can query and modify.
-<P>
-The CoreWorkload is a package of standard workloads that is distributed with the YCSB and can be used directly. In particular, the CoreWorkload defines a simple mix of read/insert/update/scan operations. The relative
-frequency of each operation is defined in the parameter file, as are other properties of the workload. Thus, by changing the parameter file, a variety of different concrete workloads can be executed. For more details
-on the CoreWorkload, see <a href="coreworkloads.html">here</a>.
-<P>
-If the CoreWorkload does not satisfy your needs, you can define your own workload by subclassing the com.yahoo.ycsb.Workload class. Details for doing this are <a href="workload.html">here</A>.
-
-<H3>Step 4. Choose the appropriate runtime parameters</H3>
-Although the workload class and paramters file define a specific workload, there are additional settings that you may want to specify for a particular run of the benchmark. These settings are provided on the command line
-when you run the YCSB client. These settings are:
-<UL>
-<LI><B>Threads</B>: the number of client threads. By default, the YCSB Client uses a single worker thread, but additional threads can be specified. This is often done to increase the amount of load offered against the database.
-<LI><B>Target</B>: the target number of operations per second. By default, the YCSB Client will try to do as many operations as it can. For example, if each operation takes 100 milliseconds on average, the Client will do about 10 operations per second per worker thread. However, you can throttle the 
-target number of operations per second. For example, to generate a latency versus throughput curve, you can try different target throughputs, and measure the resulting latency for each.
-<LI><B>Status</B>: for a long running workload, it may be useful to have the Client report status, just to assure you it has not crashed and to give you some idea of its progress. By specifying "-s" on the command line, the Client will
-report status every 10 seconds to System.err.
-</UL>
-<H3>Step 5. Load the data</H3>
-Workloads have two executable phases: the <I>loading</I> phase (which defines the data to be inserted) and the <I>transactions</I> phase (which defines the 
-operations to be executed against the data set.) To load the data, you run the YCSB Client and tell it to execute the <I>loading</I> section.
-<P>
-For example, consider the benchmark workload A (more details about the standard workloads are XXX here XXX). To load the standard dataset:
-
-<pre>
-%  java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada
-</pre>
-A few notes about this command:
-<UL>
-<LI>The "-load" parameter tells the Client to execute the <I>data</I> section of the workload.
-<LI>The "-db" parameter tells the Client which DB interface layer to use. In this case, we used the dummy BasicDB layer. You can also specify this as a property
-in your parameters file using the "db" property (for example, "db=com.yahoo.ycsb.BasicDB"). 
-<LI>The "-P" parameter is used to load property files. In this case, we used it to load the workloada parameter file.
-</UL>
-If you used BasicDB, you would see the insert statements for the database. If you used a real DB interface layer, the records would be loaded into the database.
-<P>
-The standard workload paramter files create very small databases; for example, workloada creates only 1,000 records. This is useful while debugging your setup. However,
-to run an actual benchmark you'll want to generate a much larger database. For example, imagine you want to load 100 million records. Then, you will need to 
-override the default "recordcount" property in the workloada file. This can be done in one of two ways:
-<OL>
-<LI>Specifying a new property file containing a new value of "recordcount." If this file is specified on the command line after the workloada file, it will override 
-any properties in workloada. For example, create a file called "large.dat" with the single line:
-<PRE>
-recordcount=100000000
-</PRE>
-Then, run the client as follows:
-<pre>
-%  java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat
-</pre>
-The client will load both property files, but will use the value of recordcount from the last file it loaded, e.g. large.dat
-<LI>Specify a new value of the "recordcount" property on the command line. Any properties specified on the command line override properties specified in property files.
-In this case, run the client as follows:
-<pre>
-%  java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -p recordcount=100000000
-</pre>
-</OL>
-In general, it is good practice to store any important properties in new parameter files, instead of specifying them on the command line. This makes 
-your benchmark results more reproducible; instead of having to reconstruct the exact command line you used, you just reuse the property files. Note, however, that 
-the YCSB Client will print out its command line when it begins executing, so if you store the output of the client in a data file, you can retrieve the command line
-from that file.
-<P>
-Because a large database load will take a long time, you may wish to 1. require the Client to produce status, and 2. direct any output to a datafile. Thus, you might
-execute the following to load your database:
-<pre>
-%  java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s > load.dat
-</pre>
-The "-s" parameter will require the Client to produce status report on System.err. Thus, the output of this command might be:
-<PRE>
-% java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s > load.dat
-Loading workload... (might take a few minutes in some cases for large data sets)
-Starting test.
- 0 sec: 0 operations
- 10 sec: 61731 operations; 6170.6317473010795 operations/sec
- 20 sec: 129054 operations; 6450.76477056883 operations/sec
-...
-</PRE>
-This status output will help you to see how quickly load operations are executing (so you can estimate the completion time of the load) as well as verify that the 
-load is making progress.
-<P>
-When the load completes, the Client will report statistics about the performance of the load. These statistics are the same as in the transaction phase, so see below for information on
-interpreting those statistics.
-<H3>Step 6: Execute the workload</H3>
-Once the data is loaded, you can execute the workload. This is done by telling the client to run the <i>transaction</I> section of the workload.
-<P>
-To execute the workload, you can use the following command:
-<pre>
-%  java -cp build/ycsb.jar com.yahoo.ycsb.Client -t -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s > transactions.dat
-</pre>
-The main difference in this invocation is that we used the "-t" parameter to tell the Client to use the <I>transaction</I> section instead of the <I>data</I> section.
-If you used BasicDB, and examine the resulting transactions.dat file, you will see a combination of read and update requests, as well as statistics about the execution.
-<P>
-Typically you will want to use the "-threads" and "-target" parameters to control the amount of offered load. For example, we might want 10 threads attempting a total of 100 operations per second (e.g. 10 operations/sec per thread.) As long 
-as the average latency of operations is not above 100 ms, each thread will be able to carry out its intended 10 operations per second. In general, you need enough threads so that no thread is attempting more operations per second than is possible, otherwise
-your achieved throughput will be less than the specified target throughput. For this example, we can execute:
-<pre>
-%  java -cp build/ycsb.jar com.yahoo.ycsb.Client -t -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s -threads 10 -target 100 > transactions.dat
-</pre>
-Note in this example we have used the "-threads 10" command line parameter to specify 10 threads, and "-target 100" command line parameter to specify 100 operations per second as the target.
-Alternatively, both values can be set in your parameters file using the "threads" and "target" properties respectively. For example:
-<pre>
-threads=10
-target=100
-</pre>
-<P>
-
-At the end of the run, the Client will report performance statistics on System.out. In the above example, these statistics will be written to the transactions.dat file.
-The default is to produce average, min, max, 95th and 99th percentile latency for each operation type (read, update, etc.), a count of the return codes for each operation, and a histogram of latencies for each
-operation. The return codes are defined by your database interface layer, and allow you to see if there were any errors during the workload. For the above example, we might get output like:
-<pre>
-[OVERALL],RunTime(ms), 10110
-[OVERALL],Throughput(ops/sec), 98.91196834817013
-[UPDATE], Operations, 491
-[UPDATE], AverageLatency(ms), 0.054989816700611
-[UPDATE], MinLatency(ms), 0
-[UPDATE], MaxLatency(ms), 1
-[UPDATE], 95thPercentileLatency(ms), 1
-[UPDATE], 99thPercentileLatency(ms), 1
-[UPDATE], Return=0, 491
-[UPDATE], 0, 464
-[UPDATE], 1, 27
-[UPDATE], 2, 0
-[UPDATE], 3, 0
-[UPDATE], 4, 0
-...
-</PRE>
-This output indicates:
-<UL>
-<LI>The total execution time was 10.11 seconds
-<LI>The average throughput was 98.9 operations/sec (across all threads)
-<LI>There were 491 update operations, with associated average, min, max, 95th and 99th percentile latencies 
-<LI>All 491 update operations had a return code of zero (success in this case)
-<LI>464 operations completed in less than 1 ms, while 27 completed between 1 and 2 ms.
-</UL>
-Similar statistics are available for the read operations.
-<P>
-While a histogram of latencies is often useful, sometimes a timeseries is more useful. To request a time series, specify the "measurementtype=timeseries" property on the Client command line
-or in a properties file. By default, the Client will report average latency for each interval of 1000 milliseconds. You can specify a different granularity for reporting
-using the "timeseries.granularity" property. For example:
-<pre>
-%  java -cp build/ycsb.jar com.yahoo.ycsb.Client -t -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s -threads 10 -target 100 -p measurementtype=timeseries -p timeseries.granularity=2000 > transactions.dat
-</pre>
-will report a timeseries, with readings averaged every 2,000 milliseconds (e.g. 2 seconds). The result will be:
-<PRE>
-[OVERALL],RunTime(ms), 10077
-[OVERALL],Throughput(ops/sec), 9923.58836955443
-[UPDATE], Operations, 50396
-[UPDATE], AverageLatency(ms), 0.04339630129375347
-[UPDATE], MinLatency(ms), 0
-[UPDATE], MaxLatency(ms), 338
-[UPDATE], Return=0, 50396
-[UPDATE], 0, 0.10264765784114054
-[UPDATE], 2000, 0.026989343690867442
-[UPDATE], 4000, 0.0352882703777336
-[UPDATE], 6000, 0.004238958990536277
-[UPDATE], 8000, 0.052813085033008175
-[UPDATE], 10000, 0.0
-[READ], Operations, 49604
-[READ], AverageLatency(ms), 0.038242883638416256
-[READ], MinLatency(ms), 0
-[READ], MaxLatency(ms), 230
-[READ], Return=0, 49604
-[READ], 0, 0.08997245741099663
-[READ], 2000, 0.02207505518763797
-[READ], 4000, 0.03188493260913297
-[READ], 6000, 0.004869141813755326
-[READ], 8000, 0.04355329949238579
-[READ], 10000, 0.005405405405405406
-</PRE>
-This output shows separate time series for update and read operations, with data reported every 2000 milliseconds. The data reported for a time point is the average over the previous 2000 milliseconds only.
-(In this case we used 100,000 operations and a target of 10,000 operations per second for a more interesting output.)
-A note about latency measurements: the Client measures the end to end latency of executing a particular operation against the database. That is, it starts a timer before calling the appropriate method in the DB interface layer
-class, and stops the timer when the method returns. Thus latencies include: executing inside the interface layer, network latency to the database server, and database execution time. They do not include delays introduced for throttling
-the target throughput. That is, if you specify a target of 10 operations per second (and a single thread) then the Client will only execute an operation every 100 milliseconds. If the operation takes 12 milliseconds, then the client
-will wait for an additional 88 milliseconds before trying the next operation. However, the reported latency will not include this wait time; a latency of 12 milliseconds, not 100, will be reported.
+<a name="gettingstarted">
+<H2>Getting started</H2>
+Detailed instructions for using YCSB are available on the GitHub wiki:
+<A HREF="http://wiki.github.com/brianfrankcooper/YCSB/getting-started">http://wiki.github.com/brianfrankcooper/YCSB/getting-started</A>.
 <HR>
 <A name="extending">
 <H1>Extending YCSB</H1>
@@ -345,4 +73,4 @@ More details about the entire class structure of YCSB is available here:
 <HR>
 YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/doc/javadoc/allclasses-frame.html b/doc/javadoc/allclasses-frame.html
index f82e655c27212dc0281bdac0eff37570e0aa7f3e..01857b31ba11323b268e11b8f352db8470685caf 100644
--- a/doc/javadoc/allclasses-frame.html
+++ b/doc/javadoc/allclasses-frame.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 All Classes
 </TITLE>
@@ -38,10 +38,6 @@ All Classes
 <BR>
 <A HREF="com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">DiscreteGenerator</A>
 <BR>
-<A HREF="com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodAB</A>
-<BR>
-<A HREF="com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodScrambleVector</A>
-<BR>
 <A HREF="com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb" target="classFrame">Generator</A>
 <BR>
 <A HREF="com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">IntegerGenerator</A>
@@ -58,12 +54,6 @@ All Classes
 <BR>
 <A HREF="com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">SkewedLatestGenerator</A>
 <BR>
-<A HREF="com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb" target="classFrame">TestCollisions</A>
-<BR>
-<A HREF="com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestExpandedZipfian</A>
-<BR>
-<A HREF="com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestZipfian</A>
-<BR>
 <A HREF="com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformGenerator</A>
 <BR>
 <A HREF="com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformIntegerGenerator</A>
diff --git a/doc/javadoc/allclasses-noframe.html b/doc/javadoc/allclasses-noframe.html
index 4a90f94c283b8dfefc6486a8b6dde6b706af2824..e55dd312aed67b25cc7f926a7086d9ba6f9c1d80 100644
--- a/doc/javadoc/allclasses-noframe.html
+++ b/doc/javadoc/allclasses-noframe.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:26 PDT 2010 -->
 <TITLE>
 All Classes
 </TITLE>
@@ -38,10 +38,6 @@ All Classes
 <BR>
 <A HREF="com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
 <BR>
-<A HREF="com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<BR>
-<A HREF="com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
-<BR>
 <A HREF="com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A>
 <BR>
 <A HREF="com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
@@ -58,12 +54,6 @@ All Classes
 <BR>
 <A HREF="com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>
 <BR>
-<A HREF="com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<BR>
-<A HREF="com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A>
-<BR>
-<A HREF="com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A>
-<BR>
 <A HREF="com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A>
 <BR>
 <A HREF="com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A>
diff --git a/doc/javadoc/com/yahoo/ycsb/BasicDB.html b/doc/javadoc/com/yahoo/ycsb/BasicDB.html
index 18eb060a12e1c7885a3dabe5882847e2222417be..0c97400030da6a90a721248dcea268a2fe645455 100644
--- a/doc/javadoc/com/yahoo/ycsb/BasicDB.html
+++ b/doc/javadoc/com/yahoo/ycsb/BasicDB.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 BasicDB
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/Client.html b/doc/javadoc/com/yahoo/ycsb/Client.html
index 6ce86cc29d2c1f64fdc195c26caa8a002384cc92..3bd51283e4191e34a9c479c2fe0349182b149933 100644
--- a/doc/javadoc/com/yahoo/ycsb/Client.html
+++ b/doc/javadoc/com/yahoo/ycsb/Client.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Client
 </TITLE>
@@ -96,6 +96,10 @@ java.lang.Object
 <DT><PRE>public class <B>Client</B><DT>extends java.lang.Object</DL>
 </PRE>
 
+<P>
+Main class for executing YCSB.
+<P>
+
 <P>
 <HR>
 
diff --git a/doc/javadoc/com/yahoo/ycsb/CounterGenerator.html b/doc/javadoc/com/yahoo/ycsb/CounterGenerator.html
index 3a32f48364ecd4bcbf8b58cf3ef49ad2061b3b2f..d3d1f681e23e0a70e5404aec45a54a49b1fe7f40 100644
--- a/doc/javadoc/com/yahoo/ycsb/CounterGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/CounterGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 CounterGenerator
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/DB.html b/doc/javadoc/com/yahoo/ycsb/DB.html
index addf368f485d01e137b34d2750cd391f0bc3a130..4aa547fcdeb37f1cf01b4a3876be400d568fc5bc 100644
--- a/doc/javadoc/com/yahoo/ycsb/DB.html
+++ b/doc/javadoc/com/yahoo/ycsb/DB.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 DB
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/DBException.html b/doc/javadoc/com/yahoo/ycsb/DBException.html
index 226719bbe1d397a8bea97065d6a6fdc2a449c08c..537aa30c7763cb4390a9bfb80c2abc83c7f4bd44 100644
--- a/doc/javadoc/com/yahoo/ycsb/DBException.html
+++ b/doc/javadoc/com/yahoo/ycsb/DBException.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 DBException
 </TITLE>
@@ -101,6 +101,10 @@ java.lang.Object
 <DT><PRE>public class <B>DBException</B><DT>extends java.lang.Exception</DL>
 </PRE>
 
+<P>
+Something bad happened while interacting with the database.
+<P>
+
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#com.yahoo.ycsb.DBException">Serialized Form</A></DL>
diff --git a/doc/javadoc/com/yahoo/ycsb/DBFactory.html b/doc/javadoc/com/yahoo/ycsb/DBFactory.html
index b7ceef55cf4043d39067f011d035d328cab61f82..9b321ea74730e59ce5315f6d910240f8449c2c1f 100644
--- a/doc/javadoc/com/yahoo/ycsb/DBFactory.html
+++ b/doc/javadoc/com/yahoo/ycsb/DBFactory.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 DBFactory
 </TITLE>
@@ -96,6 +96,10 @@ java.lang.Object
 <DT><PRE>public class <B>DBFactory</B><DT>extends java.lang.Object</DL>
 </PRE>
 
+<P>
+Creates a DB layer by dynamically classloading the specified DB class.
+<P>
+
 <P>
 <HR>
 
diff --git a/doc/javadoc/com/yahoo/ycsb/DBWrapper.html b/doc/javadoc/com/yahoo/ycsb/DBWrapper.html
index 205d812bc4318ea9666eb73c9577d4d07b15a797..c51ad7dc7615576c3d9acf05459f520549fa4d9c 100644
--- a/doc/javadoc/com/yahoo/ycsb/DBWrapper.html
+++ b/doc/javadoc/com/yahoo/ycsb/DBWrapper.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 DBWrapper
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/DiscreteGenerator.html b/doc/javadoc/com/yahoo/ycsb/DiscreteGenerator.html
index a3d808a14dfd1ea1979aab45a1a678e1d20e450e..5cd28b8eecee22ae2ae264cb59c4cdf01c884452 100644
--- a/doc/javadoc/com/yahoo/ycsb/DiscreteGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/DiscreteGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 DiscreteGenerator
 </TITLE>
@@ -52,7 +52,7 @@ function windowTitle()
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
 &nbsp;<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
-&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
+&nbsp;<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/DiscreteGenerator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
 &nbsp;<A HREF="DiscreteGenerator.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
@@ -97,6 +97,10 @@ java.lang.Object
 <DT><PRE>public class <B>DiscreteGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></DL>
 </PRE>
 
+<P>
+Generates a distribution by choosing from a discrete set of values.
+<P>
+
 <P>
 <HR>
 
@@ -291,7 +295,7 @@ public void <B>addValue</B>(double&nbsp;weight,
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
 &nbsp;<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
-&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
+&nbsp;<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/DiscreteGenerator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
 &nbsp;<A HREF="DiscreteGenerator.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
diff --git a/doc/javadoc/com/yahoo/ycsb/Generator.html b/doc/javadoc/com/yahoo/ycsb/Generator.html
index 1ad19fcef5fa6fbd2b24679dd7c3cc09a9d2ee49..cf8462d02cf91e48e07c155fedfbacdea172dc6b 100644
--- a/doc/javadoc/com/yahoo/ycsb/Generator.html
+++ b/doc/javadoc/com/yahoo/ycsb/Generator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:16 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Generator
 </TITLE>
@@ -51,7 +51,7 @@ function windowTitle()
 
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
-&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
 &nbsp;<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/Generator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
@@ -244,7 +244,7 @@ public abstract java.lang.String <B>lastString</B>()</PRE>
 
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
-&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
 &nbsp;<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/Generator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
diff --git a/doc/javadoc/com/yahoo/ycsb/IntegerGenerator.html b/doc/javadoc/com/yahoo/ycsb/IntegerGenerator.html
index 749d6c922514beffeda8c29ed08a03be12898074..c8b29b9bd3b6faacc3d864fbce568ded8cc23b2b 100644
--- a/doc/javadoc/com/yahoo/ycsb/IntegerGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/IntegerGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 IntegerGenerator
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/Measurements.html b/doc/javadoc/com/yahoo/ycsb/Measurements.html
index 522079c718a4b25f51ce8590dabede3a9c5f4dfd..9b1725fd352933ebdc95ca361d48e87af85b50ea 100644
--- a/doc/javadoc/com/yahoo/ycsb/Measurements.html
+++ b/doc/javadoc/com/yahoo/ycsb/Measurements.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Measurements
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/OneMeasurement.html b/doc/javadoc/com/yahoo/ycsb/OneMeasurement.html
index 40bde7d6364b0a4fea80de5881cd8cab44d43e1d..cc3b9c0d3670e1d3278b0eb6e4ee3507ff6859c6 100644
--- a/doc/javadoc/com/yahoo/ycsb/OneMeasurement.html
+++ b/doc/javadoc/com/yahoo/ycsb/OneMeasurement.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 OneMeasurement
 </TITLE>
@@ -99,6 +99,10 @@ java.lang.Object
 <DT><PRE>public abstract class <B>OneMeasurement</B><DT>extends java.lang.Object</DL>
 </PRE>
 
+<P>
+A single measured metric (e.g. READ LATENCY)
+<P>
+
 <P>
 <HR>
 
diff --git a/doc/javadoc/com/yahoo/ycsb/OneMeasurementHistogram.html b/doc/javadoc/com/yahoo/ycsb/OneMeasurementHistogram.html
index 6da502b94bbb7e85249bddc5789b9b3ab81f08a5..739a868cac860ecdc93313adc4601d43cd739dd5 100644
--- a/doc/javadoc/com/yahoo/ycsb/OneMeasurementHistogram.html
+++ b/doc/javadoc/com/yahoo/ycsb/OneMeasurementHistogram.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 OneMeasurementHistogram
 </TITLE>
@@ -98,7 +98,7 @@ java.lang.Object
 </PRE>
 
 <P>
-Take measurements and maintain a histogram of latencies.
+Take measurements and maintain a histogram of a given metric, such as READ LATENCY.
 <P>
 
 <P>
diff --git a/doc/javadoc/com/yahoo/ycsb/OneMeasurementTimeSeries.html b/doc/javadoc/com/yahoo/ycsb/OneMeasurementTimeSeries.html
index 273213f37a6b90ccb9ef7849fc38029813250661..cef9fa8c959820774a4dbc05828b7268e999aff3 100644
--- a/doc/javadoc/com/yahoo/ycsb/OneMeasurementTimeSeries.html
+++ b/doc/javadoc/com/yahoo/ycsb/OneMeasurementTimeSeries.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 OneMeasurementTimeSeries
 </TITLE>
@@ -97,6 +97,10 @@ java.lang.Object
 <DT><PRE>public class <B>OneMeasurementTimeSeries</B><DT>extends <A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></DL>
 </PRE>
 
+<P>
+A time series measurement of a metric, such as READ LATENCY.
+<P>
+
 <P>
 <HR>
 
diff --git a/doc/javadoc/com/yahoo/ycsb/ScrambledZipfianGenerator.html b/doc/javadoc/com/yahoo/ycsb/ScrambledZipfianGenerator.html
index d0507a5cf37197d9d46c80fbf977e51bcef5a56c..612ca61c68d07e3071b64f0696d056954a1b87b6 100644
--- a/doc/javadoc/com/yahoo/ycsb/ScrambledZipfianGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/ScrambledZipfianGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 ScrambledZipfianGenerator
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/SkewedLatestGenerator.html b/doc/javadoc/com/yahoo/ycsb/SkewedLatestGenerator.html
index 8a2629d2d0861460f02da7868dabdd6b7debf7a7..546e80384ce74e5280b9d4bb99b267db0826edb8 100644
--- a/doc/javadoc/com/yahoo/ycsb/SkewedLatestGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/SkewedLatestGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 SkewedLatestGenerator
 </TITLE>
@@ -52,7 +52,7 @@ function windowTitle()
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
 &nbsp;<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
-&nbsp;<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
+&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/SkewedLatestGenerator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
 &nbsp;<A HREF="SkewedLatestGenerator.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
@@ -98,6 +98,10 @@ java.lang.Object
 <DT><PRE>public class <B>SkewedLatestGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></DL>
 </PRE>
 
+<P>
+Generate a popularity distribution of items, skewed to favor recent items significantly more than older items.
+<P>
+
 <P>
 <HR>
 
@@ -248,7 +252,7 @@ public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
 &nbsp;<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
-&nbsp;<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
+&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/SkewedLatestGenerator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
 &nbsp;<A HREF="SkewedLatestGenerator.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
diff --git a/doc/javadoc/com/yahoo/ycsb/UniformGenerator.html b/doc/javadoc/com/yahoo/ycsb/UniformGenerator.html
index 516d3a1dbb6fa097847b2bf8fc8ed5e9294be841..89e7fdc8d5f9ef4ed6c70773e110a3acac2432c8 100644
--- a/doc/javadoc/com/yahoo/ycsb/UniformGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/UniformGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 UniformGenerator
 </TITLE>
@@ -51,7 +51,7 @@ function windowTitle()
 
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
-&nbsp;<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
 &nbsp;<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/UniformGenerator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
@@ -250,7 +250,7 @@ public java.lang.String <B>lastString</B>()</PRE>
 
 <TR>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
-&nbsp;<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
 &nbsp;<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   <A HREF="../../../index.html?com/yahoo/ycsb/UniformGenerator.html" target="_top"><B>FRAMES</B></A>  &nbsp;
diff --git a/doc/javadoc/com/yahoo/ycsb/UniformIntegerGenerator.html b/doc/javadoc/com/yahoo/ycsb/UniformIntegerGenerator.html
index fd79bfe41d508baa91944c498d38633c1c9faeb7..910e825fee942bc7ca05555cf3d8df6a53c96a10 100644
--- a/doc/javadoc/com/yahoo/ycsb/UniformIntegerGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/UniformIntegerGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 UniformIntegerGenerator
 </TITLE>
@@ -98,6 +98,10 @@ java.lang.Object
 <DT><PRE>public class <B>UniformIntegerGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></DL>
 </PRE>
 
+<P>
+Generates integers randomly uniform from an interval.
+<P>
+
 <P>
 <HR>
 
diff --git a/doc/javadoc/com/yahoo/ycsb/UnknownDBException.html b/doc/javadoc/com/yahoo/ycsb/UnknownDBException.html
index 1f8cf44a3b5416a08042ea420330c857436109da..104e1254a4a9a4d6a1a18f7245492bec10b8338a 100644
--- a/doc/javadoc/com/yahoo/ycsb/UnknownDBException.html
+++ b/doc/javadoc/com/yahoo/ycsb/UnknownDBException.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 UnknownDBException
 </TITLE>
@@ -101,6 +101,10 @@ java.lang.Object
 <DT><PRE>public class <B>UnknownDBException</B><DT>extends java.lang.Exception</DL>
 </PRE>
 
+<P>
+Could not create the specified DB.
+<P>
+
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#com.yahoo.ycsb.UnknownDBException">Serialized Form</A></DL>
diff --git a/doc/javadoc/com/yahoo/ycsb/Utils.html b/doc/javadoc/com/yahoo/ycsb/Utils.html
index b328a3ed3b773260a51bd076f2190141e13aff49..09ce7c7e78d08996425adadbf0da2216626d0753 100644
--- a/doc/javadoc/com/yahoo/ycsb/Utils.html
+++ b/doc/javadoc/com/yahoo/ycsb/Utils.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Utils
 </TITLE>
@@ -96,6 +96,10 @@ java.lang.Object
 <DT><PRE>public class <B>Utils</B><DT>extends java.lang.Object</DL>
 </PRE>
 
+<P>
+Utility functions.
+<P>
+
 <P>
 <HR>
 
@@ -172,7 +176,7 @@ java.lang.Object
 <TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#ASCIIString(int)">ASCIIString</A></B>(int&nbsp;length)</CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate a random ASCII string of a given length.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
@@ -196,15 +200,7 @@ java.lang.Object
 <TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#hash(int)">hash</A></B>(int&nbsp;val)</CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-</TR>
-<TR BGCOLOR="white" CLASS="TableRowColor">
-<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
-<CODE>static&nbsp;int</CODE></FONT></TD>
-<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#JenkinsHash(int)">JenkinsHash</A></B>(int&nbsp;val)</CODE>
-
-<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hash an integer value.</TD>
 </TR>
 </TABLE>
 &nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
@@ -300,6 +296,8 @@ ASCIIString</H3>
 <PRE>
 public static java.lang.String <B>ASCIIString</B>(int&nbsp;length)</PRE>
 <DL>
+<DD>Generate a random ASCII string of a given length.
+<P>
 <DD><DL>
 </DL>
 </DD>
@@ -311,17 +309,8 @@ hash</H3>
 <PRE>
 public static int <B>hash</B>(int&nbsp;val)</PRE>
 <DL>
-<DD><DL>
-</DL>
-</DD>
-</DL>
-<HR>
-
-<A NAME="JenkinsHash(int)"><!-- --></A><H3>
-JenkinsHash</H3>
-<PRE>
-public static int <B>JenkinsHash</B>(int&nbsp;val)</PRE>
-<DL>
+<DD>Hash an integer value.
+<P>
 <DD><DL>
 </DL>
 </DD>
diff --git a/doc/javadoc/com/yahoo/ycsb/Workload.html b/doc/javadoc/com/yahoo/ycsb/Workload.html
index f41f8bc7bb019c77288bb0974cf8aeff9d3d3b10..826114c394a849cd049cd206055cfd1fdbaa9f60 100644
--- a/doc/javadoc/com/yahoo/ycsb/Workload.html
+++ b/doc/javadoc/com/yahoo/ycsb/Workload.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Workload
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/WorkloadException.html b/doc/javadoc/com/yahoo/ycsb/WorkloadException.html
index 353387577f1e50b5ec5cd66e57c29918a28c49b8..6f087e98dd349d6449ed6f8e6ffe50048c9a93db 100644
--- a/doc/javadoc/com/yahoo/ycsb/WorkloadException.html
+++ b/doc/javadoc/com/yahoo/ycsb/WorkloadException.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 WorkloadException
 </TITLE>
@@ -101,6 +101,10 @@ java.lang.Object
 <DT><PRE>public class <B>WorkloadException</B><DT>extends java.lang.Exception</DL>
 </PRE>
 
+<P>
+The workload tried to do something bad.
+<P>
+
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#com.yahoo.ycsb.WorkloadException">Serialized Form</A></DL>
diff --git a/doc/javadoc/com/yahoo/ycsb/ZipfianGenerator.html b/doc/javadoc/com/yahoo/ycsb/ZipfianGenerator.html
index 9d67ffdb6e87a2087d1c8c99abc03745f99958cc..b1672c86815d0459a66d9ff02dd5a726668a1248 100644
--- a/doc/javadoc/com/yahoo/ycsb/ZipfianGenerator.html
+++ b/doc/javadoc/com/yahoo/ycsb/ZipfianGenerator.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 ZipfianGenerator
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/package-frame.html b/doc/javadoc/com/yahoo/ycsb/package-frame.html
index fb138b316e98874459ae142bd2792f46ef01c1fe..a45074cd2b29fa08513cb700ab7f3c62f306705a 100644
--- a/doc/javadoc/com/yahoo/ycsb/package-frame.html
+++ b/doc/javadoc/com/yahoo/ycsb/package-frame.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 com.yahoo.ycsb
 </TITLE>
@@ -37,10 +37,6 @@ Classes</FONT>&nbsp;
 <BR>
 <A HREF="DiscreteGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">DiscreteGenerator</A>
 <BR>
-<A HREF="FindGoodAB.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodAB</A>
-<BR>
-<A HREF="FindGoodScrambleVector.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodScrambleVector</A>
-<BR>
 <A HREF="Generator.html" title="class in com.yahoo.ycsb" target="classFrame">Generator</A>
 <BR>
 <A HREF="IntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">IntegerGenerator</A>
@@ -57,12 +53,6 @@ Classes</FONT>&nbsp;
 <BR>
 <A HREF="SkewedLatestGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">SkewedLatestGenerator</A>
 <BR>
-<A HREF="TestCollisions.html" title="class in com.yahoo.ycsb" target="classFrame">TestCollisions</A>
-<BR>
-<A HREF="TestExpandedZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestExpandedZipfian</A>
-<BR>
-<A HREF="TestZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestZipfian</A>
-<BR>
 <A HREF="UniformGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformGenerator</A>
 <BR>
 <A HREF="UniformIntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformIntegerGenerator</A>
diff --git a/doc/javadoc/com/yahoo/ycsb/package-summary.html b/doc/javadoc/com/yahoo/ycsb/package-summary.html
index 7ab0dfb17cc3e3f7b64a9e6699abfe20dca2483b..8bda454cc1100cc99a55bc6ae9147d24f24a56d9 100644
--- a/doc/javadoc/com/yahoo/ycsb/package-summary.html
+++ b/doc/javadoc/com/yahoo/ycsb/package-summary.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 com.yahoo.ycsb
 </TITLE>
@@ -90,7 +90,7 @@ Package com.yahoo.ycsb
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Main class for executing YCSB.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A></B></TD>
@@ -102,7 +102,7 @@ Package com.yahoo.ycsb
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb">DBFactory</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Creates a DB layer by dynamically classloading the specified DB class.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A></B></TD>
@@ -110,15 +110,7 @@ Package com.yahoo.ycsb
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A></B></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR BGCOLOR="white" CLASS="TableRowColor">
-<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A></B></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR BGCOLOR="white" CLASS="TableRowColor">
-<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Generates a distribution by choosing from a discrete set of values.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></B></TD>
@@ -134,15 +126,15 @@ Package com.yahoo.ycsb
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>A single measured metric (e.g.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A></B></TD>
-<TD>Take measurements and maintain a histogram of latencies.</TD>
+<TD>Take measurements and maintain a histogram of a given metric, such as READ LATENCY.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>A time series measurement of a metric, such as READ LATENCY.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A></B></TD>
@@ -150,19 +142,7 @@ Package com.yahoo.ycsb
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A></B></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR BGCOLOR="white" CLASS="TableRowColor">
-<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A></B></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR BGCOLOR="white" CLASS="TableRowColor">
-<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A></B></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR BGCOLOR="white" CLASS="TableRowColor">
-<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Generate a popularity distribution of items, skewed to favor recent items significantly more than older items.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A></B></TD>
@@ -170,11 +150,11 @@ Package com.yahoo.ycsb
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Generates integers randomly uniform from an interval.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Utility functions.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></B></TD>
@@ -196,15 +176,15 @@ Package com.yahoo.ycsb
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Something bad happened while interacting with the database.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>Could not create the specified DB.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></B></TD>
-<TD>&nbsp;</TD>
+<TD>The workload tried to do something bad.</TD>
 </TR>
 </TABLE>
 &nbsp;
diff --git a/doc/javadoc/com/yahoo/ycsb/package-tree.html b/doc/javadoc/com/yahoo/ycsb/package-tree.html
index 90944fc4e1e85d70d870425342ee298ac69f17f2..b35e8c64915d60846c7bcabe3f797c49cde98385 100644
--- a/doc/javadoc/com/yahoo/ycsb/package-tree.html
+++ b/doc/javadoc/com/yahoo/ycsb/package-tree.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 com.yahoo.ycsb Class Hierarchy
 </TITLE>
@@ -89,13 +89,13 @@ Class Hierarchy
 <LI TYPE="circle">java.lang.Object<UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>Client</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>DB</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>BasicDB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>DBWrapper</B></A></UL>
-<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>FindGoodAB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>FindGoodScrambleVector</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>Generator</B></A><UL>
+<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>Generator</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>DiscreteGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>IntegerGenerator</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>CounterGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ScrambledZipfianGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>SkewedLatestGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>UniformIntegerGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ZipfianGenerator</B></A></UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>UniformGenerator</B></A></UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>Measurements</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>OneMeasurement</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>OneMeasurementHistogram</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>OneMeasurementTimeSeries</B></A></UL>
-<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>TestCollisions</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>TestExpandedZipfian</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>TestZipfian</B></A><LI TYPE="circle">java.lang.Throwable (implements java.io.Serializable)
+<LI TYPE="circle">java.lang.Throwable (implements java.io.Serializable)
 <UL>
 <LI TYPE="circle">java.lang.Exception<UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>DBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>UnknownDBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>WorkloadException</B></A></UL>
diff --git a/doc/javadoc/com/yahoo/ycsb/workloads/CoreWorkload.html b/doc/javadoc/com/yahoo/ycsb/workloads/CoreWorkload.html
index 0c19121e68b006656835776881a522708d43de9e..5ea1c558e9aaa4055faf64028e9d51fb1449d8af 100644
--- a/doc/javadoc/com/yahoo/ycsb/workloads/CoreWorkload.html
+++ b/doc/javadoc/com/yahoo/ycsb/workloads/CoreWorkload.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 CoreWorkload
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/workloads/package-frame.html b/doc/javadoc/com/yahoo/ycsb/workloads/package-frame.html
index 0147c99b74d1e0d945b9d7ff8716db4498129344..070ade80b5df457a96920f91108d3f3648fdb2f1 100644
--- a/doc/javadoc/com/yahoo/ycsb/workloads/package-frame.html
+++ b/doc/javadoc/com/yahoo/ycsb/workloads/package-frame.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 com.yahoo.ycsb.workloads
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/workloads/package-summary.html b/doc/javadoc/com/yahoo/ycsb/workloads/package-summary.html
index 267df3d2426479b5b661c1cd7a7ea14630c97c7a..b792122b200c259ea49e8725ef7c6e2a5f4c03ee 100644
--- a/doc/javadoc/com/yahoo/ycsb/workloads/package-summary.html
+++ b/doc/javadoc/com/yahoo/ycsb/workloads/package-summary.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 com.yahoo.ycsb.workloads
 </TITLE>
diff --git a/doc/javadoc/com/yahoo/ycsb/workloads/package-tree.html b/doc/javadoc/com/yahoo/ycsb/workloads/package-tree.html
index 7aac189f2143b03b9a0001dfb46f1cfe81fbc274..c3c0674093d9ff5b1c683145e9fa91a5b0a00f8f 100644
--- a/doc/javadoc/com/yahoo/ycsb/workloads/package-tree.html
+++ b/doc/javadoc/com/yahoo/ycsb/workloads/package-tree.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 com.yahoo.ycsb.workloads Class Hierarchy
 </TITLE>
diff --git a/doc/javadoc/constant-values.html b/doc/javadoc/constant-values.html
index 33180e82fd5380b9b265abcf7c3ed88ec1bd245e..a6d861ef5abbd37f99a21b4f19cb87203bb692ec 100644
--- a/doc/javadoc/constant-values.html
+++ b/doc/javadoc/constant-values.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Constant Field Values
 </TITLE>
diff --git a/doc/javadoc/deprecated-list.html b/doc/javadoc/deprecated-list.html
index a4461ef02c1ca1073347de03ba3337ccf8496fa2..ba042aaa230bc92f3a14ac1289693d666ff77310 100644
--- a/doc/javadoc/deprecated-list.html
+++ b/doc/javadoc/deprecated-list.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Deprecated List
 </TITLE>
diff --git a/doc/javadoc/help-doc.html b/doc/javadoc/help-doc.html
index 7c5b7894bd37fdf3be664715a29eaf497f1371a3..10267e56668bacbe9f0e543e025e67909ea70286 100644
--- a/doc/javadoc/help-doc.html
+++ b/doc/javadoc/help-doc.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:26 PDT 2010 -->
 <TITLE>
 API Help
 </TITLE>
diff --git a/doc/javadoc/index-all.html b/doc/javadoc/index-all.html
index eaf4193cfe0dd5e95e1ae60d02d33f76e77d0754..4821b9486a924fc137641336e7135a6b37bb49ca 100644
--- a/doc/javadoc/index-all.html
+++ b/doc/javadoc/index-all.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Index
 </TITLE>
@@ -73,33 +73,21 @@ function windowTitle()
 <A NAME="skip-navbar_top"></A>
 <!-- ========= END OF TOP NAVBAR ========= -->
 
-<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_J_">J</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_Z_">Z</A> <HR>
+<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_Z_">Z</A> <HR>
 <A NAME="_A_"><!-- --></A><H2>
 <B>A</B></H2>
 <DL>
-<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#a"><B>a</B></A> - 
-Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#a"><B>a</B></A> - 
-Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#addValue(double, java.lang.String)"><B>addValue(double, String)</B></A> - 
 Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/Utils.html#ASCIIString(int)"><B>ASCIIString(int)</B></A> - 
 Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
-<DD>&nbsp;
+<DD>Generate a random ASCII string of a given length.
 </DL>
 <HR>
 <A NAME="_B_"><!-- --></A><H2>
 <B>B</B></H2>
 <DL>
-<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#b"><B>b</B></A> - 
-Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#b"><B>b</B></A> - 
-Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>BasicDB</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Basic DB that just prints out the requested operations, instead of doing them against a database.<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#BasicDB()"><B>BasicDB()</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
 <DD>&nbsp;
@@ -126,7 +114,7 @@ Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="
 <DT><A HREF="./com/yahoo/ycsb/Workload.html#cleanup()"><B>cleanup()</B></A> - 
 Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
 <DD>Cleanup the scenario.
-<DT><A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>Client</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/Client.html#Client()"><B>Client()</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>Client</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Main class for executing YCSB.<DT><A HREF="./com/yahoo/ycsb/Client.html#Client()"><B>Client()</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/package-summary.html"><B>com.yahoo.ycsb</B></A> - package com.yahoo.ycsb<DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/workloads/package-summary.html"><B>com.yahoo.ycsb.workloads</B></A> - package com.yahoo.ycsb.workloads<DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads"><B>CoreWorkload</B></A> - Class in <A HREF="./com/yahoo/ycsb/workloads/package-summary.html">com.yahoo.ycsb.workloads</A><DD>The core benchmark scenario.<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#CoreWorkload()"><B>CoreWorkload()</B></A> - 
@@ -143,7 +131,7 @@ Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/CounterGenerator.
 <DT><A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>DB</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A layer for accessing a database to be benchmarked.<DT><A HREF="./com/yahoo/ycsb/DB.html#DB()"><B>DB()</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>DBException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException(java.lang.String)"><B>DBException(String)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>DBException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Something bad happened while interacting with the database.<DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException(java.lang.String)"><B>DBException(String)</B></A> - 
 Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException()"><B>DBException()</B></A> - 
@@ -155,7 +143,7 @@ Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBException.h
 <DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException(java.lang.Throwable)"><B>DBException(Throwable)</B></A> - 
 Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/DBFactory.html#DBFactory()"><B>DBFactory()</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Creates a DB layer by dynamically classloading the specified DB class.<DT><A HREF="./com/yahoo/ycsb/DBFactory.html#DBFactory()"><B>DBFactory()</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb">DBFactory</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>DBWrapper</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Wrapper around a "real" DB that measures latencies and counts return codes.<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#DBWrapper(com.yahoo.ycsb.DB)"><B>DBWrapper(DB)</B></A> - 
@@ -170,7 +158,7 @@ Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class i
 <DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#delete(java.lang.String, java.lang.String)"><B>delete(String, String)</B></A> - 
 Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
 <DD>Delete a record from the database.
-<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>DiscreteGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#DiscreteGenerator()"><B>DiscreteGenerator()</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>DiscreteGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Generates a distribution by choosing from a discrete set of values.<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#DiscreteGenerator()"><B>DiscreteGenerator()</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/Workload.html#doInsert(com.yahoo.ycsb.DB, java.lang.Object)"><B>doInsert(DB, Object)</B></A> - 
@@ -217,12 +205,6 @@ Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/work
 <DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_LENGTH_PROPERTY_DEFAULT"><B>FIELD_LENGTH_PROPERTY_DEFAULT</B></A> - 
 Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
 <DD>The default length of a field in bytes.
-<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>FindGoodAB</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#FindGoodAB()"><B>FindGoodAB()</B></A> - 
-Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>FindGoodScrambleVector</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#FindGoodScrambleVector()"><B>FindGoodScrambleVector()</B></A> - 
-Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
-<DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/Utils.html#FNV_offset_basis_32"><B>FNV_offset_basis_32</B></A> - 
 Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
 <DD>&nbsp;
@@ -284,18 +266,9 @@ Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement
 <A NAME="_H_"><!-- --></A><H2>
 <B>H</B></H2>
 <DL>
-<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#hash(int, int)"><B>hash(int, int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#hash(int, int)"><B>hash(int, int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#hash(int, int)"><B>hash(int, int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/Utils.html#hash(int)"><B>hash(int)</B></A> - 
 Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
-<DD>&nbsp;
+<DD>Hash an integer value.
 </DL>
 <HR>
 <A NAME="_I_"><!-- --></A><H2>
@@ -357,14 +330,6 @@ Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfi
 <DD>&nbsp;
 </DL>
 <HR>
-<A NAME="_J_"><!-- --></A><H2>
-<B>J</B></H2>
-<DL>
-<DT><A HREF="./com/yahoo/ycsb/Utils.html#JenkinsHash(int)"><B>JenkinsHash(int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
-<DD>&nbsp;
-</DL>
-<HR>
 <A NAME="_L_"><!-- --></A><H2>
 <B>L</B></H2>
 <DL>
@@ -391,27 +356,12 @@ Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformGenerator.html"
 <DT><A HREF="./com/yahoo/ycsb/Client.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
 Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
-<DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
 Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
 Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestZipfian.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A>
-<DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
 Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
 <DD>&nbsp;
@@ -494,13 +444,13 @@ Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformGenerator.html"
 <A NAME="_O_"><!-- --></A><H2>
 <B>O</B></H2>
 <DL>
-<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>OneMeasurement</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#OneMeasurement(java.lang.String)"><B>OneMeasurement(String)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>OneMeasurement</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A single measured metric (e.g.<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#OneMeasurement(java.lang.String)"><B>OneMeasurement(String)</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>OneMeasurementHistogram</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Take measurements and maintain a histogram of latencies.<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#OneMeasurementHistogram(java.lang.String, java.util.Properties)"><B>OneMeasurementHistogram(String, Properties)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>OneMeasurementHistogram</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Take measurements and maintain a histogram of a given metric, such as READ LATENCY.<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#OneMeasurementHistogram(java.lang.String, java.util.Properties)"><B>OneMeasurementHistogram(String, Properties)</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>OneMeasurementTimeSeries</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#OneMeasurementTimeSeries(java.lang.String, java.util.Properties)"><B>OneMeasurementTimeSeries(String, Properties)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>OneMeasurementTimeSeries</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A time series measurement of a metric, such as READ LATENCY.<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#OneMeasurementTimeSeries(java.lang.String, java.util.Properties)"><B>OneMeasurementTimeSeries(String, Properties)</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/Client.html#OPERATION_COUNT_PROPERTY"><B>OPERATION_COUNT_PROPERTY</B></A> - 
@@ -602,18 +552,6 @@ Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/work
 <DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_PROPORTION_PROPERTY_DEFAULT"><B>SCAN_PROPORTION_PROPERTY_DEFAULT</B></A> - 
 Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
 <DD>The default proportion of transactions that are scans.
-<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#scramble(int)"><B>scramble(int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#scramble(int)"><B>scramble(int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#scramble(int)"><B>scramble(int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#scrambleArray()"><B>scrambleArray()</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
-<DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ScrambledZipfianGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A generator of a zipfian distribution.<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#ScrambledZipfianGenerator(long)"><B>ScrambledZipfianGenerator(long)</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
 <DD>Create a zipfian generator for the specified number of items.
@@ -638,7 +576,7 @@ Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html"
 <DT><A HREF="./com/yahoo/ycsb/BasicDB.html#SIMULATE_DELAY_DEFAULT"><B>SIMULATE_DELAY_DEFAULT</B></A> - 
 Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>SkewedLatestGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html#SkewedLatestGenerator(com.yahoo.ycsb.CounterGenerator)"><B>SkewedLatestGenerator(CounterGenerator)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>SkewedLatestGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Generate a popularity distribution of items, skewed to favor recent items significantly more than older items.<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html#SkewedLatestGenerator(com.yahoo.ycsb.CounterGenerator)"><B>SkewedLatestGenerator(CounterGenerator)</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>
 <DD>&nbsp;
 </DL>
@@ -649,21 +587,6 @@ Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/SkewedLatestGener
 <DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#TABLENAME"><B>TABLENAME</B></A> - 
 Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
 <DD>The name of the database table to run queries against.
-<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>TestCollisions</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#TestCollisions()"><B>TestCollisions()</B></A> - 
-Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>TestExpandedZipfian</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html#TestExpandedZipfian()"><B>TestExpandedZipfian()</B></A> - 
-Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#testVector(int)"><B>testVector(int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#testVector(int)"><B>testVector(int)</B></A> - 
-Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
-<DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>TestZipfian</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/TestZipfian.html#TestZipfian()"><B>TestZipfian()</B></A> - 
-Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A>
-<DD>&nbsp;
 </DL>
 <HR>
 <A NAME="_U_"><!-- --></A><H2>
@@ -672,10 +595,10 @@ Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestZipfian.html"
 <DT><A HREF="./com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>UniformGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>An expression that generates a random integer in the specified range<DT><A HREF="./com/yahoo/ycsb/UniformGenerator.html#UniformGenerator(java.util.Vector)"><B>UniformGenerator(Vector&lt;String&gt;)</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A>
 <DD>Creates a generator that will return strings from the specified set uniformly randomly
-<DT><A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>UniformIntegerGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html#UniformIntegerGenerator(int, int)"><B>UniformIntegerGenerator(int, int)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>UniformIntegerGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Generates integers randomly uniform from an interval.<DT><A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html#UniformIntegerGenerator(int, int)"><B>UniformIntegerGenerator(int, int)</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A>
 <DD>Creates a generator that will return integers uniformly randomly from the interval [lb,ub] inclusive (that is, lb and ub are possible values)
-<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>UnknownDBException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.String)"><B>UnknownDBException(String)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>UnknownDBException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Could not create the specified DB.<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.String)"><B>UnknownDBException(String)</B></A> - 
 Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html#UnknownDBException()"><B>UnknownDBException()</B></A> - 
@@ -705,7 +628,7 @@ Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/work
 <DT><A HREF="./com/yahoo/ycsb/Client.html#usageMessage()"><B>usageMessage()</B></A> - 
 Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>Utils</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/Utils.html#Utils()"><B>Utils()</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>Utils</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Utility functions.<DT><A HREF="./com/yahoo/ycsb/Utils.html#Utils()"><B>Utils()</B></A> - 
 Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
 <DD>&nbsp;
 </DL>
@@ -730,7 +653,7 @@ Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" ti
 <DT><A HREF="./com/yahoo/ycsb/Client.html#WORKLOAD_PROPERTY"><B>WORKLOAD_PROPERTY</B></A> - 
 Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
 <DD>&nbsp;
-<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>WorkloadException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.String)"><B>WorkloadException(String)</B></A> - 
+<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>WorkloadException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>The workload tried to do something bad.<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.String)"><B>WorkloadException(String)</B></A> - 
 Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A>
 <DD>&nbsp;
 <DT><A HREF="./com/yahoo/ycsb/WorkloadException.html#WorkloadException()"><B>WorkloadException()</B></A> - 
@@ -770,7 +693,7 @@ Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.
 <DD>Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant, using the precomputed value of zeta.
 </DL>
 <HR>
-<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_J_">J</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_Z_">Z</A> 
+<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_Z_">Z</A> 
 
 <!-- ======= START OF BOTTOM NAVBAR ====== -->
 <A NAME="navbar_bottom"><!-- --></A>
diff --git a/doc/javadoc/index.html b/doc/javadoc/index.html
index 73dd22fb3f67dcdcfbbd387f5f79aa980f5bb116..f0d2fa68a278e1bd805affdcced6e06775f16777 100644
--- a/doc/javadoc/index.html
+++ b/doc/javadoc/index.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc on Tue Apr 20 15:39:17 PDT 2010-->
+<!-- Generated by javadoc on Fri Apr 23 10:24:26 PDT 2010-->
 <TITLE>
 Generated Documentation (Untitled)
 </TITLE>
diff --git a/doc/javadoc/overview-frame.html b/doc/javadoc/overview-frame.html
index 16507ee7c5bf0e52df2b3aaddab92070bd7debeb..53bef5b5b03a00ef40115d4a9868ae0e2d177b29 100644
--- a/doc/javadoc/overview-frame.html
+++ b/doc/javadoc/overview-frame.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Overview
 </TITLE>
diff --git a/doc/javadoc/overview-summary.html b/doc/javadoc/overview-summary.html
index 09c5b14d8263fec76909a62baf29b09fcfa8d1aa..020204afbcfa51de29328c5b7af42413f8960b06 100644
--- a/doc/javadoc/overview-summary.html
+++ b/doc/javadoc/overview-summary.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:26 PDT 2010 -->
 <TITLE>
 Overview
 </TITLE>
diff --git a/doc/javadoc/overview-tree.html b/doc/javadoc/overview-tree.html
index 0a2352600208e9023fd275b2fafa2b1bdc69abf3..71d5a37eef2092e195dda62c6b71389a6f4651a2 100644
--- a/doc/javadoc/overview-tree.html
+++ b/doc/javadoc/overview-tree.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Class Hierarchy
 </TITLE>
@@ -88,13 +88,13 @@ Class Hierarchy
 <LI TYPE="circle">java.lang.Object<UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>Client</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>DB</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>BasicDB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>DBWrapper</B></A></UL>
-<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>FindGoodAB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>FindGoodScrambleVector</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>Generator</B></A><UL>
+<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>Generator</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>DiscreteGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>IntegerGenerator</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>CounterGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ScrambledZipfianGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>SkewedLatestGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>UniformIntegerGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ZipfianGenerator</B></A></UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>UniformGenerator</B></A></UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>Measurements</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>OneMeasurement</B></A><UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>OneMeasurementHistogram</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>OneMeasurementTimeSeries</B></A></UL>
-<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>TestCollisions</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>TestExpandedZipfian</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>TestZipfian</B></A><LI TYPE="circle">java.lang.Throwable (implements java.io.Serializable)
+<LI TYPE="circle">java.lang.Throwable (implements java.io.Serializable)
 <UL>
 <LI TYPE="circle">java.lang.Exception<UL>
 <LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>DBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>UnknownDBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>WorkloadException</B></A></UL>
diff --git a/doc/javadoc/serialized-form.html b/doc/javadoc/serialized-form.html
index 4b2f347a4156b931bab72b040ee37a4034762c32..337c1f42379290b741ed5f9f5a2340bdd7c1d4b7 100644
--- a/doc/javadoc/serialized-form.html
+++ b/doc/javadoc/serialized-form.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.5.0_22) on Tue Apr 20 15:39:17 PDT 2010 -->
+<!-- Generated by javadoc (build 1.5.0_22) on Fri Apr 23 10:24:25 PDT 2010 -->
 <TITLE>
 Serialized Form
 </TITLE>
diff --git a/src/com/yahoo/ycsb/Client.java b/src/com/yahoo/ycsb/Client.java
index 73561c9df45f00cf5574b5b60e3223e212a5e386..f8677bda0aefbcf841f109b288bff4aa39571b7a 100644
--- a/src/com/yahoo/ycsb/Client.java
+++ b/src/com/yahoo/ycsb/Client.java
@@ -311,7 +311,9 @@ class ClientThread extends Thread
 	}
 }
 
-
+/**
+ * Main class for executing YCSB.
+ */
 public class Client
 {
 
diff --git a/src/com/yahoo/ycsb/DBException.java b/src/com/yahoo/ycsb/DBException.java
index 9c68198141ce273505d2994dd9dd81e2827295c1..c598938afc66bb193a78ab6f861b5a004e7c9c46 100644
--- a/src/com/yahoo/ycsb/DBException.java
+++ b/src/com/yahoo/ycsb/DBException.java
@@ -17,6 +17,9 @@
 
 package com.yahoo.ycsb;
 
+/**
+ * Something bad happened while interacting with the database.
+ */
 public class DBException extends Exception
 {
       /**
diff --git a/src/com/yahoo/ycsb/DBFactory.java b/src/com/yahoo/ycsb/DBFactory.java
index 53057739ca226337de32f7af03e8ed86b1923b47..b526aa91badb9144f28547b8e5aeee4801796c3b 100644
--- a/src/com/yahoo/ycsb/DBFactory.java
+++ b/src/com/yahoo/ycsb/DBFactory.java
@@ -19,6 +19,9 @@ package com.yahoo.ycsb;
 
 import java.util.Properties;
 
+/**
+ * Creates a DB layer by dynamically classloading the specified DB class.
+ */
 public class DBFactory
 {
       @SuppressWarnings("unchecked")
diff --git a/src/com/yahoo/ycsb/DiscreteGenerator.java b/src/com/yahoo/ycsb/DiscreteGenerator.java
index c324ba7f6c8fcb63f64e5269dd824d8cd2a6f1c0..0640d88330fc5106b9fc50c2615444e1e3a00c66 100644
--- a/src/com/yahoo/ycsb/DiscreteGenerator.java
+++ b/src/com/yahoo/ycsb/DiscreteGenerator.java
@@ -20,6 +20,9 @@ package com.yahoo.ycsb;
 import java.util.Vector;
 import java.util.Random;
 
+/**
+ * Generates a distribution by choosing from a discrete set of values.
+ */
 public class DiscreteGenerator extends Generator
 {
 	class Pair
diff --git a/src/com/yahoo/ycsb/FindGoodAB.java b/src/com/yahoo/ycsb/FindGoodAB.java
deleted file mode 100644
index 2186d384472377921bcc496acd0a49d354075f64..0000000000000000000000000000000000000000
--- a/src/com/yahoo/ycsb/FindGoodAB.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/**                                                                                                                                                                                
- * Copyright (c) 2010 Yahoo! Inc. All rights reserved.                                                                                                                             
- *                                                                                                                                                                                 
- * Licensed under the Apache License, Version 2.0 (the "License"); you                                                                                                             
- * may not use this file except in compliance with the License. You                                                                                                                
- * may obtain a copy of the License at                                                                                                                                             
- *                                                                                                                                                                                 
- * http://www.apache.org/licenses/LICENSE-2.0                                                                                                                                      
- *                                                                                                                                                                                 
- * Unless required by applicable law or agreed to in writing, software                                                                                                             
- * distributed under the License is distributed on an "AS IS" BASIS,                                                                                                               
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or                                                                                                                 
- * implied. See the License for the specific language governing                                                                                                                    
- * permissions and limitations under the License. See accompanying                                                                                                                 
- * LICENSE file.                                                                                                                                                                   
- */
-
-package com.yahoo.ycsb;
-
-import java.util.Random;
-
-public class FindGoodAB {
-
-	static final int[] scramblevector={251, 37, 147, 110, 233, 38, 225, 244, 17, 31, 231, 33, 249, 93, 229, 177, 47, 142, 55, 65, 106, 104, 178, 61, 182, 89, 222, 51, 108, 165, 100, 111, 113, 195, 197, 102, 35, 88, 9, 184, 128, 239, 240, 90, 92, 98, 78, 158, 219, 16, 112, 121, 13, 56, 236, 58, 82, 73, 167, 216, 224, 223, 14, 39, 175, 70, 203, 83, 50, 238, 139, 125, 211, 12, 141, 63, 237, 152, 135, 144, 48, 138, 213, 21, 97, 53, 245, 172, 166, 114, 194, 94, 198, 127, 191, 36, 148, 67, 30, 4, 71, 27, 221, 173, 72, 143, 80, 202, 181, 160, 159, 86, 201, 188, 59, 105, 25, 11, 57, 156, 24, 149, 183, 241, 18, 161, 124, 234, 176, 41, 133, 136, 122, 218, 10, 210, 45, 77, 116, 42, 206, 120, 29, 115, 180, 235, 81, 7, 163, 205, 22, 187, 107, 199, 32, 8, 227, 129, 19, 5, 190, 130, 209, 212, 243, 146, 99, 119, 169, 60, 68, 254, 52, 40, 255, 134, 96, 79, 192, 189, 101, 20, 226, 164, 2, 217, 207, 3, 91, 137, 252, 247, 117, 15, 118, 109, 230, 170, 44, 66, 200, 140, 84, 154, 215, 62, 196, 157, 153, 123, 150, 174, 208, 248, 145, 95, 1, 85, 193, 103, 204, 131, 186, 49, 168, 253, 132, 220, 242, 214, 162, 228, 74, 179, 232, 34, 75, 151, 246, 69, 23, 6, 126, 76, 0, 185, 46, 87, 64, 54, 26, 43, 28, 155, 171, 250};
-	static final int[] scramblevector2={35, 210, 27, 178, 218, 165, 145, 87, 10, 133, 134, 127, 92, 205, 96, 250, 136, 59, 84, 248, 19, 20, 147, 125, 89, 180, 246, 12, 137, 168, 142, 69, 130, 199, 150, 223, 0, 26, 14, 57, 155, 236, 204, 195, 66, 97, 56, 230, 159, 253, 229, 52, 182, 39, 189, 255, 44, 71, 139, 5, 3, 63, 121, 60, 135, 193, 8, 51, 49, 75, 76, 129, 6, 38, 33, 46, 80, 24, 103, 249, 251, 94, 32, 162, 161, 131, 225, 34, 149, 203, 211, 170, 93, 74, 109, 36, 45, 101, 124, 13, 65, 41, 128, 98, 148, 233, 112, 156, 85, 146, 81, 172, 219, 100, 240, 17, 18, 23, 202, 220, 239, 169, 68, 115, 143, 48, 47, 77, 58, 7, 241, 244, 173, 164, 151, 167, 70, 254, 181, 194, 191, 132, 227, 28, 158, 171, 30, 166, 72, 200, 64, 79, 163, 108, 104, 25, 42, 126, 153, 54, 11, 198, 119, 221, 187, 228, 120, 207, 122, 176, 222, 208, 16, 113, 102, 185, 116, 242, 86, 105, 234, 217, 157, 206, 154, 238, 174, 190, 209, 144, 37, 2, 9, 55, 15, 247, 83, 183, 188, 152, 50, 231, 43, 212, 184, 245, 232, 177, 214, 224, 111, 114, 243, 197, 235, 140, 21, 61, 29, 62, 40, 160, 186, 138, 118, 67, 196, 110, 237, 53, 82, 175, 107, 73, 213, 123, 95, 117, 192, 201, 215, 216, 78, 226, 91, 106, 141, 90, 4, 99, 252, 179, 88, 1, 22, 31};
-	static final int[] scramblevector3={208, 11, 56, 253, 167, 174, 228, 75, 251, 5, 227, 198, 57, 120, 103, 169, 218, 76, 24, 45, 170, 83, 55, 139, 40, 20, 87, 192, 21, 188, 200, 63, 13, 143, 99, 144, 96, 6, 36, 244, 176, 175, 59, 118, 67, 155, 195, 121, 77, 220, 101, 60, 235, 163, 212, 116, 78, 153, 216, 23, 219, 8, 138, 126, 136, 47, 217, 85, 247, 34, 50, 7, 252, 221, 64, 209, 22, 206, 110, 157, 249, 193, 199, 236, 30, 25, 89, 245, 182, 124, 154, 242, 43, 141, 80, 62, 201, 4, 51, 16, 254, 1, 186, 191, 86, 137, 100, 106, 91, 10, 215, 223, 95, 164, 129, 71, 246, 239, 127, 190, 39, 93, 119, 151, 210, 184, 28, 224, 202, 123, 72, 108, 146, 12, 27, 204, 73, 90, 179, 66, 84, 237, 65, 173, 158, 37, 105, 194, 178, 159, 230, 148, 35, 42, 131, 140, 15, 94, 250, 48, 180, 203, 166, 0, 88, 49, 171, 29, 122, 205, 111, 185, 107, 160, 189, 14, 98, 69, 46, 3, 31, 168, 241, 26, 225, 145, 156, 234, 243, 135, 214, 54, 109, 70, 248, 233, 161, 17, 222, 196, 183, 115, 41, 232, 213, 9, 134, 211, 58, 181, 113, 172, 132, 150, 79, 255, 114, 165, 152, 112, 33, 97, 44, 207, 147, 177, 197, 61, 2, 149, 82, 162, 38, 231, 92, 32, 128, 226, 52, 238, 125, 117, 68, 102, 142, 74, 53, 240, 19, 18, 187, 104, 229, 130, 133, 81};
-	
-	static final int[][] scramblevectors={scramblevector,scramblevector2,scramblevector3};
-	
-	static final int scrambles=3;
-	
-	public static int scramble(int val)
-	{
-		int ret=0;
-		
-		for (int s=0; s<scrambles; s++)
-		{
-			for (int i = 3; i >=0; i--) 
-			{
-				int tval=val>>(8*i);
-				int octet=tval&0x00ff;
-			
-		
-				ret<<=8;
-				ret+=scramblevectors[s][octet];
-			}
-		}
-		
-		return ret;
-	}
-	
-	/*
-	public static int hash(int val, int itemcount)
-	{
-		//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
-		//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
-		int ret=val;
-		
-		ret=Math.abs(Utils.scramble(ret));
-		
-		return ret%itemcount;
-	}
-	*/
-	
-	public static int a;
-	public static int b;
-	
-	public static int hash(int val, int itemcount)
-	{
-		return Math.abs(val*a+b)%itemcount;
-	}
-	
-	public static void main(String[] args)
-	{
-		int itemcount=100000;
-
-		int iterations=0;
-		
-		Random r=new Random();
-		int bestcount=0;
-		int besta=0,bestb=0;
-		while (true)
-		{
-			a=r.nextInt();
-			b=r.nextInt();
-		
-			int count=testVector(itemcount);
-			iterations++;
-			
-			if (count>bestcount)
-			{
-				bestcount=count;
-				besta=a;
-				bestb=b;
-			}
-			
-			if (iterations%1000==0)
-			{
-				System.out.println(bestcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"%   a="+besta+"  b="+bestb);
-			}
-		}
-	}
-	
-	public static int testVector(int itemcount)
-	{
-		int[] countarray=new int[itemcount];
-		
-		for (int i=0; i<itemcount; i++)
-		{
-			countarray[i]=0;
-		}
-			
-		for (int i=0; i<itemcount; i++)
-		{
-			countarray[hash(i,itemcount)]++;
-		}
-		
-		int count=0;
-		for (int i=0; i<itemcount; i++)
-		{
-			if (countarray[i]>0)
-			{
-				count++;
-			}
-		}
-		
-		return count;
-	}
-
-
-}
diff --git a/src/com/yahoo/ycsb/FindGoodScrambleVector.java b/src/com/yahoo/ycsb/FindGoodScrambleVector.java
deleted file mode 100644
index 44b22210f84646c1ecd1e55c2f5cd5d98a0f547f..0000000000000000000000000000000000000000
--- a/src/com/yahoo/ycsb/FindGoodScrambleVector.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/**                                                                                                                                                                                
- * Copyright (c) 2010 Yahoo! Inc. All rights reserved.                                                                                                                             
- *                                                                                                                                                                                 
- * Licensed under the Apache License, Version 2.0 (the "License"); you                                                                                                             
- * may not use this file except in compliance with the License. You                                                                                                                
- * may obtain a copy of the License at                                                                                                                                             
- *                                                                                                                                                                                 
- * http://www.apache.org/licenses/LICENSE-2.0                                                                                                                                      
- *                                                                                                                                                                                 
- * Unless required by applicable law or agreed to in writing, software                                                                                                             
- * distributed under the License is distributed on an "AS IS" BASIS,                                                                                                               
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or                                                                                                                 
- * implied. See the License for the specific language governing                                                                                                                    
- * permissions and limitations under the License. See accompanying                                                                                                                 
- * LICENSE file.                                                                                                                                                                   
- */
-
-package com.yahoo.ycsb;
-
-import java.util.Random;
-
-public class FindGoodScrambleVector {
-static Random r=new Random();
-	
-	static final int permutations=2;
-	
-	static final int scrambles=3;
-	
-	static int[] scramblevector=null;
-	static int[] bestscramblevector=null;
-	static int bestcount=0;
-	
-	public static int[] scrambleArray()
-	{
-		int[] arr=new int[256];
-		
-		for (int i=0; i<256; i++)
-		{
-			arr[i]=i;
-		}
-	
-		for (int p=0; p<permutations; p++)
-		{
-			for (int i=255; i>=1; i--)
-			{
-				int index=r.nextInt(256);
-				int swp=arr[i];
-				arr[i]=arr[index];
-				arr[index]=swp;
-			}
-		}
-		
-		return arr;
-	}
-	
-	public static int scramble(int val)
-	{
-		int ret=0;
-		
-		for (int i = 3; i >=0; i--) 
-		{
-			int tval=val>>(8*i);
-			int octet=tval&0x00ff;
-			
-		
-			ret<<=8;
-			ret+=scramblevector[octet];
-		}
-		
-		return ret;
-	}
-	
-	public static int hash(int val, int itemcount)
-	{
-		//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
-		//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
-		int ret=val;
-		
-		for (int i=0; i<scrambles; i++)
-		{
-			ret=Math.abs(scramble(ret));
-			//ret=scramble(ret);
-		}
-		
-		//ret=Math.abs(ret);
-		
-		return ret%itemcount;
-	}
-	/**
-	 * @param args
-	 */
-	public static void main(String[] args) {
-		int items=100000;
-	
-		int iterations=0;
-		
-		while (true)
-		{
-			scramblevector=scrambleArray();
-			
-			//one iteration
-			int[] count=new int[items];
-			for (int i=0; i<items; i++)
-			{
-				count[i]=0;
-			}
-
-			for (int i=0; i<items; i++)
-			{
-				count[hash(i,items)]++;
-			}
-
-			int itemsleft=0;
-
-			for (int i=0; i<items; i++)
-			{
-				if (count[i]>0)
-				{
-					itemsleft++;
-				}
-			}
-			
-			if (itemsleft>bestcount)
-			{
-				bestscramblevector=scramblevector;
-				bestcount=itemsleft;
-			}
-		
-			iterations++;
-			
-			if (iterations%1000==0)
-			{
-				System.out.println(iterations+". "+bestcount);
-				System.out.print("     ");
-				for (int i=0; i<256; i++)
-				{
-					System.out.print(bestscramblevector[i]+", ");
-				}
-				System.out.println();
-				
-			}
-		}
-		
-		
-	}
-}
diff --git a/src/com/yahoo/ycsb/OneMeasurement.java b/src/com/yahoo/ycsb/OneMeasurement.java
index 4a6602747c29657c78737f9d587d79560c70762a..a531220cc7e17bc25a68185c2764731694cdd316 100644
--- a/src/com/yahoo/ycsb/OneMeasurement.java
+++ b/src/com/yahoo/ycsb/OneMeasurement.java
@@ -19,6 +19,9 @@ package com.yahoo.ycsb;
 
 import java.io.PrintStream;
 
+/**
+ * A single measured metric (e.g. READ LATENCY)
+ */
 public abstract class OneMeasurement {
 
 	String _name;
diff --git a/src/com/yahoo/ycsb/OneMeasurementHistogram.java b/src/com/yahoo/ycsb/OneMeasurementHistogram.java
index 48d04f0a7e6d2f6a5b1417311241ce43d7b02f91..be81dd0b0070ee62e15c72f297b91c71597e9e5d 100644
--- a/src/com/yahoo/ycsb/OneMeasurementHistogram.java
+++ b/src/com/yahoo/ycsb/OneMeasurementHistogram.java
@@ -24,7 +24,7 @@ import java.util.Properties;
 
 
 /**
- * Take measurements and maintain a histogram of latencies.
+ * Take measurements and maintain a histogram of a given metric, such as READ LATENCY.
  * 
  * @author cooperb
  *
diff --git a/src/com/yahoo/ycsb/OneMeasurementTimeSeries.java b/src/com/yahoo/ycsb/OneMeasurementTimeSeries.java
index 21698505578adc4d50a46c7e844a0482ae4c1655..4f4d4aa60fde19b98b649d43466476f7ba43a893 100644
--- a/src/com/yahoo/ycsb/OneMeasurementTimeSeries.java
+++ b/src/com/yahoo/ycsb/OneMeasurementTimeSeries.java
@@ -37,6 +37,9 @@ class SeriesUnit
 	public double average; 
 }
 
+/**
+ * A time series measurement of a metric, such as READ LATENCY.
+ */
 public class OneMeasurementTimeSeries extends OneMeasurement 
 {
 	/**
diff --git a/src/com/yahoo/ycsb/SkewedLatestGenerator.java b/src/com/yahoo/ycsb/SkewedLatestGenerator.java
index 1a97140f3d85904dd0427e8f5fc693ee600862ab..dbe789aaac06cd7ef8467e63576f749d120122f7 100644
--- a/src/com/yahoo/ycsb/SkewedLatestGenerator.java
+++ b/src/com/yahoo/ycsb/SkewedLatestGenerator.java
@@ -17,6 +17,9 @@
 
 package com.yahoo.ycsb;
 
+/**
+ * Generate a popularity distribution of items, skewed to favor recent items significantly more than older items.
+ */
 public class SkewedLatestGenerator extends IntegerGenerator
 {
 	CounterGenerator _basis;
diff --git a/src/com/yahoo/ycsb/TestCollisions.java b/src/com/yahoo/ycsb/TestCollisions.java
deleted file mode 100644
index e268e0b34a6547ea0ab7fb862cca23280a868d32..0000000000000000000000000000000000000000
--- a/src/com/yahoo/ycsb/TestCollisions.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/**                                                                                                                                                                                
- * Copyright (c) 2010 Yahoo! Inc. All rights reserved.                                                                                                                             
- *                                                                                                                                                                                 
- * Licensed under the Apache License, Version 2.0 (the "License"); you                                                                                                             
- * may not use this file except in compliance with the License. You                                                                                                                
- * may obtain a copy of the License at                                                                                                                                             
- *                                                                                                                                                                                 
- * http://www.apache.org/licenses/LICENSE-2.0                                                                                                                                      
- *                                                                                                                                                                                 
- * Unless required by applicable law or agreed to in writing, software                                                                                                             
- * distributed under the License is distributed on an "AS IS" BASIS,                                                                                                               
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or                                                                                                                 
- * implied. See the License for the specific language governing                                                                                                                    
- * permissions and limitations under the License. See accompanying                                                                                                                 
- * LICENSE file.                                                                                                                                                                   
- */
-
-package com.yahoo.ycsb;
-
-import java.util.Random;
-
-
-public class TestCollisions {
-
-	static final int[] scramblevector={251, 37, 147, 110, 233, 38, 225, 244, 17, 31, 231, 33, 249, 93, 229, 177, 47, 142, 55, 65, 106, 104, 178, 61, 182, 89, 222, 51, 108, 165, 100, 111, 113, 195, 197, 102, 35, 88, 9, 184, 128, 239, 240, 90, 92, 98, 78, 158, 219, 16, 112, 121, 13, 56, 236, 58, 82, 73, 167, 216, 224, 223, 14, 39, 175, 70, 203, 83, 50, 238, 139, 125, 211, 12, 141, 63, 237, 152, 135, 144, 48, 138, 213, 21, 97, 53, 245, 172, 166, 114, 194, 94, 198, 127, 191, 36, 148, 67, 30, 4, 71, 27, 221, 173, 72, 143, 80, 202, 181, 160, 159, 86, 201, 188, 59, 105, 25, 11, 57, 156, 24, 149, 183, 241, 18, 161, 124, 234, 176, 41, 133, 136, 122, 218, 10, 210, 45, 77, 116, 42, 206, 120, 29, 115, 180, 235, 81, 7, 163, 205, 22, 187, 107, 199, 32, 8, 227, 129, 19, 5, 190, 130, 209, 212, 243, 146, 99, 119, 169, 60, 68, 254, 52, 40, 255, 134, 96, 79, 192, 189, 101, 20, 226, 164, 2, 217, 207, 3, 91, 137, 252, 247, 117, 15, 118, 109, 230, 170, 44, 66, 200, 140, 84, 154, 215, 62, 196, 157, 153, 123, 150, 174, 208, 248, 145, 95, 1, 85, 193, 103, 204, 131, 186, 49, 168, 253, 132, 220, 242, 214, 162, 228, 74, 179, 232, 34, 75, 151, 246, 69, 23, 6, 126, 76, 0, 185, 46, 87, 64, 54, 26, 43, 28, 155, 171, 250};
-	static final int[] scramblevector2={35, 210, 27, 178, 218, 165, 145, 87, 10, 133, 134, 127, 92, 205, 96, 250, 136, 59, 84, 248, 19, 20, 147, 125, 89, 180, 246, 12, 137, 168, 142, 69, 130, 199, 150, 223, 0, 26, 14, 57, 155, 236, 204, 195, 66, 97, 56, 230, 159, 253, 229, 52, 182, 39, 189, 255, 44, 71, 139, 5, 3, 63, 121, 60, 135, 193, 8, 51, 49, 75, 76, 129, 6, 38, 33, 46, 80, 24, 103, 249, 251, 94, 32, 162, 161, 131, 225, 34, 149, 203, 211, 170, 93, 74, 109, 36, 45, 101, 124, 13, 65, 41, 128, 98, 148, 233, 112, 156, 85, 146, 81, 172, 219, 100, 240, 17, 18, 23, 202, 220, 239, 169, 68, 115, 143, 48, 47, 77, 58, 7, 241, 244, 173, 164, 151, 167, 70, 254, 181, 194, 191, 132, 227, 28, 158, 171, 30, 166, 72, 200, 64, 79, 163, 108, 104, 25, 42, 126, 153, 54, 11, 198, 119, 221, 187, 228, 120, 207, 122, 176, 222, 208, 16, 113, 102, 185, 116, 242, 86, 105, 234, 217, 157, 206, 154, 238, 174, 190, 209, 144, 37, 2, 9, 55, 15, 247, 83, 183, 188, 152, 50, 231, 43, 212, 184, 245, 232, 177, 214, 224, 111, 114, 243, 197, 235, 140, 21, 61, 29, 62, 40, 160, 186, 138, 118, 67, 196, 110, 237, 53, 82, 175, 107, 73, 213, 123, 95, 117, 192, 201, 215, 216, 78, 226, 91, 106, 141, 90, 4, 99, 252, 179, 88, 1, 22, 31};
-	static final int[] scramblevector3={208, 11, 56, 253, 167, 174, 228, 75, 251, 5, 227, 198, 57, 120, 103, 169, 218, 76, 24, 45, 170, 83, 55, 139, 40, 20, 87, 192, 21, 188, 200, 63, 13, 143, 99, 144, 96, 6, 36, 244, 176, 175, 59, 118, 67, 155, 195, 121, 77, 220, 101, 60, 235, 163, 212, 116, 78, 153, 216, 23, 219, 8, 138, 126, 136, 47, 217, 85, 247, 34, 50, 7, 252, 221, 64, 209, 22, 206, 110, 157, 249, 193, 199, 236, 30, 25, 89, 245, 182, 124, 154, 242, 43, 141, 80, 62, 201, 4, 51, 16, 254, 1, 186, 191, 86, 137, 100, 106, 91, 10, 215, 223, 95, 164, 129, 71, 246, 239, 127, 190, 39, 93, 119, 151, 210, 184, 28, 224, 202, 123, 72, 108, 146, 12, 27, 204, 73, 90, 179, 66, 84, 237, 65, 173, 158, 37, 105, 194, 178, 159, 230, 148, 35, 42, 131, 140, 15, 94, 250, 48, 180, 203, 166, 0, 88, 49, 171, 29, 122, 205, 111, 185, 107, 160, 189, 14, 98, 69, 46, 3, 31, 168, 241, 26, 225, 145, 156, 234, 243, 135, 214, 54, 109, 70, 248, 233, 161, 17, 222, 196, 183, 115, 41, 232, 213, 9, 134, 211, 58, 181, 113, 172, 132, 150, 79, 255, 114, 165, 152, 112, 33, 97, 44, 207, 147, 177, 197, 61, 2, 149, 82, 162, 38, 231, 92, 32, 128, 226, 52, 238, 125, 117, 68, 102, 142, 74, 53, 240, 19, 18, 187, 104, 229, 130, 133, 81};
-	
-	static final int[][] scramblevectors={scramblevector,scramblevector2,scramblevector3};
-	
-	static final int scrambles=3;
-	
-	public static int scramble(int val)
-	{
-		int ret=0;
-		
-		for (int s=0; s<scrambles; s++)
-		{
-			for (int i = 3; i >=0; i--) 
-			{
-				int tval=val>>(8*i);
-				int octet=tval&0x00ff;
-			
-		
-				ret<<=8;
-				ret+=scramblevectors[s][octet];
-			}
-		}
-		
-		return ret;
-	}
-	
-	/*
-	public static int hash(int val, int itemcount)
-	{
-		//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
-		//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
-		int ret=val;
-		
-		ret=Math.abs(Utils.scramble(ret));
-		
-		return ret%itemcount;
-	}
-	*/
-	
-	public static int a=787690635;
-	public static int b=-1147376859;
-	
-	public static int hash(int val, int itemcount)
-	{
-		return Math.abs((val*a+b)%itemcount);
-	}
-	
-	public static void main(String[] args)
-	{
-		Random r=new Random();
-		for (int itemcount=1000000; itemcount<500000000; itemcount+=1000000)
-		{
-			int bestcount=0;
-			int besta=0;
-			int bestb=0;
-			int iterations=0;
-			while (true)
-			{
-				a=r.nextInt(itemcount);
-				b=r.nextInt(itemcount);
-				int count=testVector(itemcount);
-				if (count>bestcount)
-				{
-					bestcount=count;
-					besta=a;
-					bestb=b;
-				}
-				iterations++;
-				if (iterations%1000==0)
-				{
-					System.err.println("     "+itemcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"(a="+besta+", b="+bestb+")");
-				}
-				if (((double)bestcount)/((double)itemcount)>0.9)
-				{
-					break;
-				}
-			}
-			System.err.println(itemcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"(a="+besta+", b="+bestb+")");
-			System.out.println(itemcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"(a="+besta+", b="+bestb+")");
-		}
-	}
-	
-	public static int testVector(int itemcount)
-	{
-		int[] countarray=new int[itemcount];
-		
-		for (int i=0; i<itemcount; i++)
-		{
-			countarray[i]=0;
-		}
-			
-		for (int i=0; i<itemcount; i++)
-		{
-			countarray[hash(i,itemcount)]++;
-		}
-		
-		int count=0;
-		for (int i=0; i<itemcount; i++)
-		{
-			if (countarray[i]>0)
-			{
-				count++;
-			}
-		}
-		
-		/*
-		for (int i=0; i<itemcount; i++)
-		{
-			System.out.println(i+", "+hash(i,itemcount));
-		}
-		*/
-		
-		return count;
-	}
-
-}
diff --git a/src/com/yahoo/ycsb/TestExpandedZipfian.java b/src/com/yahoo/ycsb/TestExpandedZipfian.java
deleted file mode 100644
index d71b757325436c93611939f085aae237233a549d..0000000000000000000000000000000000000000
--- a/src/com/yahoo/ycsb/TestExpandedZipfian.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/**                                                                                                                                                                                
- * Copyright (c) 2010 Yahoo! Inc. All rights reserved.                                                                                                                             
- *                                                                                                                                                                                 
- * Licensed under the Apache License, Version 2.0 (the "License"); you                                                                                                             
- * may not use this file except in compliance with the License. You                                                                                                                
- * may obtain a copy of the License at                                                                                                                                             
- *                                                                                                                                                                                 
- * http://www.apache.org/licenses/LICENSE-2.0                                                                                                                                      
- *                                                                                                                                                                                 
- * Unless required by applicable law or agreed to in writing, software                                                                                                             
- * distributed under the License is distributed on an "AS IS" BASIS,                                                                                                               
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or                                                                                                                 
- * implied. See the License for the specific language governing                                                                                                                    
- * permissions and limitations under the License. See accompanying                                                                                                                 
- * LICENSE file.                                                                                                                                                                   
- */
-
-package com.yahoo.ycsb;
-
-public class TestExpandedZipfian {
-
-	public static void main(String[] args) {
-
-		int itemcount=10000000;
-		int scalefactor=10;
-		int opcount=itemcount*100;
-		
-		System.err.println("Initializing...");
-		ZipfianGenerator gen=new ZipfianGenerator(itemcount*scalefactor);
-		System.err.println("Running...");
-		
-		int[] count=new int[itemcount];
-		for (int i=0; i<itemcount; i++)
-		{
-			count[i]=0;
-		}
-		
-		for (int i=0; i<opcount; i++)
-		{
-			if (i%1000000==0)
-			{
-				System.err.println("  "+i+" operations");
-			}
-			int pick=Utils.hash(gen.nextInt())%itemcount;
-			count[pick]++;
-		}
-		
-		int hits=0;
-		
-		for (int i=0; i<itemcount; i++)
-		{
-			if (count[i]>0)
-			{
-				hits++;
-			}
-			System.out.println(count[i]+", "+i);
-		}
-		
-		System.err.println(hits+", "+(100.0*((double)hits)/((double)itemcount))+" %");
-		
-	}
-
-}
diff --git a/src/com/yahoo/ycsb/TestZipfian.java b/src/com/yahoo/ycsb/TestZipfian.java
deleted file mode 100644
index 22add7098fddf71565f1fd80c2b2a879c39e7524..0000000000000000000000000000000000000000
--- a/src/com/yahoo/ycsb/TestZipfian.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/**                                                                                                                                                                                
- * Copyright (c) 2010 Yahoo! Inc. All rights reserved.                                                                                                                             
- *                                                                                                                                                                                 
- * Licensed under the Apache License, Version 2.0 (the "License"); you                                                                                                             
- * may not use this file except in compliance with the License. You                                                                                                                
- * may obtain a copy of the License at                                                                                                                                             
- *                                                                                                                                                                                 
- * http://www.apache.org/licenses/LICENSE-2.0                                                                                                                                      
- *                                                                                                                                                                                 
- * Unless required by applicable law or agreed to in writing, software                                                                                                             
- * distributed under the License is distributed on an "AS IS" BASIS,                                                                                                               
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or                                                                                                                 
- * implied. See the License for the specific language governing                                                                                                                    
- * permissions and limitations under the License. See accompanying                                                                                                                 
- * LICENSE file.                                                                                                                                                                   
- */
-
-package com.yahoo.ycsb;
-
-public class TestZipfian {
-
-	public static void main(String[] args) {
-		int itemcount=100000;
-		int operationcount=10000000;
-		
-		IntegerGenerator gen=new ZipfianGenerator(itemcount);
-		
-		int[] counter=new int[itemcount];
-		
-		for (int i=0; i<itemcount; i++)
-		{
-			counter[i]=0;
-		}
-		
-		for (int i=0; i<operationcount; i++)
-		{
-			counter[gen.nextInt()]++;
-		}
-		
-		for (int i=0; i<itemcount; i++)
-		{
-			System.out.println(i+", "+counter[i]);
-		}
-		
-		/*
-		int maxcount=0;
-		
-		for (int i=0; i<itemcount; i++)
-		{
-			if (counter[i]>maxcount)
-			{
-				maxcount=counter[i];
-			}
-		}
-		
-		int[] buckets=new int[maxcount+1];
-		
-		for (int i=0; i<maxcount+1; i++)
-		{
-			buckets[i]=0;
-		}
-		
-		for (int i=0; i<itemcount; i++)
-		{
-			buckets[counter[i]]++;
-		}
-		
-		for (int i=0; i<maxcount+1; i++)
-		{
-			if (buckets[i]>0)
-			{
-				System.out.println(i+", "+buckets[i]);
-			}
-		}
-		
-		*/
-	}
-
-}
diff --git a/src/com/yahoo/ycsb/UniformIntegerGenerator.java b/src/com/yahoo/ycsb/UniformIntegerGenerator.java
index a42622387bdae46155a81b92728a4b21fdce2934..f4cca3e95ee85686eb5e18c0d06ae2640472a073 100644
--- a/src/com/yahoo/ycsb/UniformIntegerGenerator.java
+++ b/src/com/yahoo/ycsb/UniformIntegerGenerator.java
@@ -19,6 +19,9 @@ package com.yahoo.ycsb;
 
 import java.util.Random;
 
+/**
+ * Generates integers randomly uniform from an interval.
+ */
 public class UniformIntegerGenerator extends IntegerGenerator 
 {
 	Random _random;
diff --git a/src/com/yahoo/ycsb/UnknownDBException.java b/src/com/yahoo/ycsb/UnknownDBException.java
index f24dfc0b55a92ded646d4974225a1ce567dddb71..9e20a35125f86d871a618d99e2bee63878e89759 100644
--- a/src/com/yahoo/ycsb/UnknownDBException.java
+++ b/src/com/yahoo/ycsb/UnknownDBException.java
@@ -17,6 +17,9 @@
 
 package com.yahoo.ycsb;
 
+/**
+ * Could not create the specified DB.
+ */
 public class UnknownDBException extends Exception
 {
       /**
diff --git a/src/com/yahoo/ycsb/Utils.java b/src/com/yahoo/ycsb/Utils.java
index 33bee0651c4fdf71694929d38f58466882b5b5a4..fc905296f6963c0f9d165f3dec3d603dd164a866 100644
--- a/src/com/yahoo/ycsb/Utils.java
+++ b/src/com/yahoo/ycsb/Utils.java
@@ -19,98 +19,87 @@ package com.yahoo.ycsb;
 
 import java.util.Random;
 
+/**
+ * Utility functions.
+ */
 public class Utils
 {
 	static Random random=new Random();
 	
-	public static String ASCIIString(int length)
-	{
-		int interval='~'-' '+1;
-
-		StringBuilder str=new StringBuilder();
-		for (int i=0; i<length; i++)
-		{
-			char c=(char)(random.nextInt(interval)+' ');
-			str.append(c);
-		}
-
-		return str.toString();
-	}
-	
-	public static int hash(int val)
-	{
-		//return JenkinsHash(val);
-		return FNVhash32(val);
-	}
-
-	public static int JenkinsHash(int val)
-	{
-		//from http://en.wikipedia.org/wiki/Jenkins_hash_function
-		int hash = 0;
-
-		for (int i = 0; i < 4; i++) {
-			int octet=val&0x00ff;
-			val=val>>8;
-		
-			hash += octet;
-			hash += (hash << 10);
-			hash ^= (hash >> 6);
-		}
-		hash += (hash << 3);
-		hash ^= (hash >> 11);
-		hash += (hash << 15);
-		return Math.abs(hash);
-	}
-	
-	public static final int FNV_offset_basis_32=0x811c9dc5;
-	public static final int FNV_prime_32=16777619;
+      /**
+       * Generate a random ASCII string of a given length.
+       */
+      public static String ASCIIString(int length)
+      {
+	 int interval='~'-' '+1;
+	 
+	 StringBuilder str=new StringBuilder();
+	 for (int i=0; i<length; i++)
+	 {
+	    char c=(char)(random.nextInt(interval)+' ');
+	    str.append(c);
+	 }
+	 
+	 return str.toString();
+      }
+      
+      /**
+       * Hash an integer value.
+       */
+      public static int hash(int val)
+      {
+	 return FNVhash32(val);
+      }
 	
-	/**
-	 * 32 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
-	 * 
-	 * @param val The value to hash.
-	 * @return The hash value
-	 */
-	public static int FNVhash32(int val)
-	{
-		//from http://en.wikipedia.org/wiki/Fowler_Noll_Vo_hash
-		int hashval = FNV_offset_basis_32;
-
-		for (int i=0; i<4; i++)
-		{
-			int octet=val&0x00ff;
-			val=val>>8;
-
-			hashval = hashval ^ octet;
-			hashval = hashval * FNV_prime_32;
-			//hashval = hashval ^ octet;
-		}
-		return Math.abs(hashval);
-	}
-
-	public static final long FNV_offset_basis_64=0xCBF29CE484222325L;
-	public static final long FNV_prime_64=1099511628211L;
-	
-	/**
-	 * 64 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
-	 * 
-	 * @param val The value to hash.
-	 * @return The hash value
-	 */
-	public static long FNVhash64(long val)
-	{
-		//from http://en.wikipedia.org/wiki/Fowler_Noll_Vo_hash
-		long hashval = FNV_offset_basis_64;
-
-		for (int i=0; i<8; i++)
-		{
-			long octet=val&0x00ff;
-			val=val>>8;
-
-			hashval = hashval ^ octet;
-			hashval = hashval * FNV_prime_64;
-			//hashval = hashval ^ octet;
-		}
-		return Math.abs(hashval);
-	}
+      public static final int FNV_offset_basis_32=0x811c9dc5;
+      public static final int FNV_prime_32=16777619;
+      
+      /**
+       * 32 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
+       * 
+       * @param val The value to hash.
+       * @return The hash value
+       */
+      public static int FNVhash32(int val)
+      {
+	 //from http://en.wikipedia.org/wiki/Fowler_Noll_Vo_hash
+	 int hashval = FNV_offset_basis_32;
+	 
+	 for (int i=0; i<4; i++)
+	 {
+	    int octet=val&0x00ff;
+	    val=val>>8;
+	    
+	    hashval = hashval ^ octet;
+	    hashval = hashval * FNV_prime_32;
+	    //hashval = hashval ^ octet;
+	 }
+	 return Math.abs(hashval);
+      }
+      
+      public static final long FNV_offset_basis_64=0xCBF29CE484222325L;
+      public static final long FNV_prime_64=1099511628211L;
+      
+      /**
+       * 64 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
+       * 
+       * @param val The value to hash.
+       * @return The hash value
+       */
+      public static long FNVhash64(long val)
+      {
+	 //from http://en.wikipedia.org/wiki/Fowler_Noll_Vo_hash
+	 long hashval = FNV_offset_basis_64;
+	 
+	 for (int i=0; i<8; i++)
+	 {
+	    long octet=val&0x00ff;
+	    val=val>>8;
+	    
+	    hashval = hashval ^ octet;
+	    hashval = hashval * FNV_prime_64;
+	    //hashval = hashval ^ octet;
+	 }
+	 return Math.abs(hashval);
+      }
 }
diff --git a/src/com/yahoo/ycsb/WorkloadException.java b/src/com/yahoo/ycsb/WorkloadException.java
index 0870eae0e066c0e0ff05ebca003cef49a744bfbd..0704881c6b5a9100096930bb23c430c9dd82aa80 100644
--- a/src/com/yahoo/ycsb/WorkloadException.java
+++ b/src/com/yahoo/ycsb/WorkloadException.java
@@ -17,6 +17,9 @@
 
 package com.yahoo.ycsb;
 
+/**
+ * The workload tried to do something bad.
+ */
 public class WorkloadException extends Exception
 {
 	/**