YCSB Versions Save

Yahoo! Cloud Serving Benchmark

0.12.0

7 years ago

Incompatible Changes

  • None

Known Issues

  • The Cassandra CQL clients do not use prepared statements. (see #458)
  • The mongodb binding does not honor the maxPoolSize=XX parameter and instead opens a connection per client thread. (see #317)
  • Several unsupported datastore bindings are still listed in CLI help. (see #328)
  • The HBase binding does not report a clear error message on encountering version incompatibility. (see #343)
  • Datastore drivers that lack timeouts may result in YCSB failing to honor the maxexecutiontime parameter. (see #618)
  • Redis Scans are not performant. (see #636)
  • "Latest" distribution does not work properly on update transactions. (see #640)
  • Accumulo client currently always claims success even when the record it's supposed to operate on (e.g. for a read) doesn't exist. (see #699)
  • JDK 9 is not supported. (see #704)
  • The Rados client is missing from the properties file for new platform-specific script. (see #790)

Changes

  • #837 [azuretablestorage] - Added Azure Table Storage binding
  • #776,#850 [cassandra] - Test fixes - Sigar test dependency and logging
  • #863 [core] - Support fractional percentile metrics in output format
  • #833 [googledatastore] - Upgrade to version v1
  • #842,#872 [jdbc] - JDBC fixes
  • #848 [orientdb] - Upgrade to 2.2.10 and multithreading bug fixes
  • #756 [rest] - Added REST web services binding
  • #847 [solr] - Upgrade to 5.5.3
  • #849 [solr6] - Add Solr 6 binding
  • #852 [packaging] - Fix distribution of bindings.properties
  • #712,#854 JDK 9 support fixes

Tested Datastores

Datastore bindings that have been changed in this release and verified as working:

  • Apache Solr 5.5.3 (via solr binding).
  • :new: Apache Solr 6.3.0 (via solr6 binding).
  • :new: azuretablestorage (via azuretablestorage binding).
  • googledatastore (via googledatastore binding).
  • [jdbc] JDBC on MySQL and Phoenix (via jdbc binding).
  • [rest] REST on Tomcat (via rest binding).
  • OrientDB 2.2.10 (via orientdb binding).

Supported bindings, tested in previous releases, unchanged in this release:

Untested Datastores:

Framework Fixes and Changes

  • [core] Support fractional percentile metrics in output format. (see #863)
  • [core] JDK 9 support fixes. (see #712 and #854)
  • [packaging] Fix distribution of bindings.properties. (see #852)

Thanks

This release was tested by the following contributors: @joshelser, @risdenk, @shivam-maharshi, @xiangcong, and @yuyantingzero. Their efforts are highly appreciated.

0.12.0-RC1

7 years ago

UPPERCASE WARNING: THIS IS A RELEASE CANDIDATE AND IS NOT INTENDED FOR DOWNSTREAM USE.

This source is the first release candidate for version 0.12.0. The associated issue #873:

  • provides the list of changes since version 0.11.0
  • contains testing instructions
  • is the recommended location for leaving any feedback

0.11.0

7 years ago

Incompatible Changes

  • [cassandra] Deprecated Cassandra client removed. (see #794)
  • [cassandra] Rename of cassandra2-cql client to cassandra-cql.
  • [couchbase2] Deprecated couchbase client in favor of couchbase2. (see #791)

Known Issues

  • The Cassandra CQL clients do not use prepared statements. (see #458)
  • The mongodb binding does not honor the maxPoolSize=XX parameter and instead opens a connection per client thread. (see #317)
  • Several unsupported datastore bindings are still listed in CLI help. (see #328)
  • The HBase binding does not report a clear error message on encountering version incompatibility. (see #343)
  • Datastore drivers that lack timeouts may result in YCSB failing to honor the maxexecutiontime parameter. (see #618)
  • Redis Scans are not performant. (see #636)
  • "Latest" distribution does not work properly on update transactions. (see #640)
  • Accumulo client currently always claims success even when the record it's supposed to operate on (e.g. for a read) doesn't exist. (see #699)
  • JDK 9 is not supported. (see #704)
  • The Rados client is missing from the properties file for new platform-specific script. (see #790)

Tested Datastores

Datastore bindings that have been changed in this release and verified as working:

  • :new: ArangoDB 2.8.7 (via arangodb binding).
    • [arangodb] Support for ArangoDB. (see #749)
  • Apache Geode (incubating) 1.0.0-incubating.M3 (via geode binding).
    • [geode] Update to Apache Geode (incubating) to improve memory footprint. (see #828)
  • Couchbase2 4.0 and 4.5 (via couchbase2 binding).
    • [couchbase2] Deprecated couchbase client in favor of couchbase2. (see #791)
    • [couchbase2] Capability to specify TTL for Couchbase2. (see #803)
  • Elasticsearch 2.4 (via elasticsearch binding).
    • [elasticsearch] Various Elasticsearch improvements. (see #800)
  • Apache Kudu 0.9.0-incubating (via kudu binding)
    • [kudu] Update Kudu binding to 0.9.0. (see #774)

Supported bindings, tested in previous releases, unchanged in this release:

Untested Datastores:

Framework Fixes and Changes

  • [core] Fix issue with hdrhistogram+raw. (see #788)
  • [core] Performance optimizations for BasicDB and RandomByteIterator. (see #815)

Thanks

This release was tested by the following contributors: @charliemblack, @danburkert, @daschl, @jasontedor and @smallsmallc. Their efforts are highly appreciated, as also those of @busbey who helped facilitate the release, as usual.

0.11.0-RC1

7 years ago

UPPERCASE WARNING: THIS IS A RELEASE CANDIDATE AND IS NOT INTENDED FOR DOWNSTREAM USE.

This source is the first release candidate for version 0.11.0. The associated issue #827:

  • provides the list of changes since version 0.10.0
  • contains testing instructions
  • is the recommended location for leaving any feedback

0.10.0

7 years ago

Incompatible Changes

  • :exclamation: mongodb-async now returns status OK for all operations when at write concern NONE, rather than the previous NOT_FOUND. See #759 for details.

Known Issues

  • The Cassandra CQL clients do not use prepared statements (#458).
  • The mongodb binding does not honor the maxPoolSize=XX parameter and instead opens a connection per client thread. (see #317)
  • Several unsupported datastore bindings are still listed in CLI help. (see #328)
  • The HBase binding does not report a clear error message on encountering version incompatibility. (see #343)
  • Datastore drivers that lack timeouts may result in YCSB failing to honor the maxexecutiontime parameter. (See #618)
  • Redis Scans are not performant (#636)
  • "Latest" distribution does not work properly on update transactions (#640)
  • Accumulo client currently always claims success even when the record it's supposed to operate on (e.g. for a read) doesn't exist (#699)
  • JDK 9 is not supported (#704)
  • The Rados client is missing from the properties file for new platform-specific scripts. #790

Tested Datastores

Datastore bindings that have been changed in this release and verified as working:

  • Couchbase2 4.0 and 4.5 (via couchbase2 binding).
    • #773 [couchbase2] Update Java SDK version, query for workloade
    • #786 [couchbase2] logical error in decode()
    • #789 [couchbase2] fix regressions introduced in latest changes
  • MongoDB 1.8.5(async only), 2.0.9, 2.2.7, 2.4.14, 2.6.12, 3.0.11, 3.2.4 (via mongodb and mongodb-async bindings).
    • #758 [mongodb] added logback.xml to mongodb module
    • #759 [mongodb] always return OK status when mongodb-async uses write concern NONE
  • MySQL 5.5 via its JDBC driver (via jdbc binding)
    • #755 [jdbc] add batched inserts to JDBC binding
  • :new: PostgreSQL 9.5.2's JDBC4 Driver and MySQL 5.5 (via jdbc binding)
    • #755 [jdbc] add batched inserts to JDBC binding
  • :new: Rados store from Ceph Jewel 10.2.2 (via rados binding) #670

Supported bindings, tested in previous releases, unchanged in this release:

Untested Datastores:

Framework Changes

Platform specific launching scripts

This release includes a first-pass implementation of Windows and Posix specific launching scripts for YCSB. They can be found along side the normal python script in the bin directory. Downstream users are encouraged to begin testing use of these scripts, since the Python bin\ycsb is expected to be removed in a future version. (#737, #777, #784)

Other Changes

  • #751 [core] correct calculation of weighted histograms

Packaging Changes

Cassandra2 module included in convenience artifacts

The prebuilt artifact should include the cassandra2 module again. See #766.

Running from source on Windows

The known issue "Running directly from a source checkout on Windows is not supported. (see #335)" should now be solved, so long as downstream users rely on the Windows-specific YCSB launcher bin/ycsb.bat. See #737 and #777

Thanks

Special thanks for helping to test this release goes out to: @allanbank, @cmatser, @daschl, @jaemyoun, and @sekikn!

0.10.0-RC3

7 years ago

UPPERCASE WARNING: THIS IS A RELEASE CANDIDATE AND IS NOT INTENDED FOR DOWNSTREAM USE.

This source is a candidate for release 0.10.0. Please see #772 issue for testing instructions and where to leave your feedback.

Compared to the RC2, this candidate includes

  • #784 [packaging] distribution tarball doesn't include the new scripts for running ycsb
  • #773 [couchbase2] Update Java SDK version, query for workloade
  • #786 [couchbase2] logical error in decode()

0.10.0-RC2

7 years ago

UPPERCASE WARNING: THIS IS A RELEASE CANDIDATE AND IS NOT INTENDED FOR DOWNSTREAM USE.

This source is a candidate for release 0.10.0. Please see #772 issue for testing instructions and where to leave your feedback.

Compared to the RC1, this candidate includes

  • #777 [scripts] Add mvn build if necessary for source checkout on windows.

0.10.0-RC1

7 years ago

UPPERCASE WARNING: THIS IS A RELEASE CANDIDATE AND IS NOT INTENDED FOR DOWNSTREAM USE.

This source is a candidate for release 0.10.0. Please see #772 issue for testing instructions and where to leave your feedback.

Compared to the previous release, this candidate includes

  • #670 [rados] add binding for RADOS of Ceph FS
  • #737 [scripts] move to posix and windows specific shell scripts instead of python
  • #751 [core] correct calculation of weighted histograms
  • #755 [jdbc] add batched inserts to JDBC binding
  • #758 [mongodb] added logback.xml to mongodb module
  • #759 [mongodb] always return OK status when mongodb-async uses w=0
  • #766 [cassandra2] ycsb prebuilt artifact doesn't include cassanda2 module (no commits)

0.9.0

8 years ago

Incompatible changes

  • :exclamation: Elasticsearch returns Status.NOT_FOUND instead of Status.ERROR when an item does not exist. See #721.

Known issues

  • ❗ The convenience tarball of pre-compiled artifacts is missing the cassandra2 module (#766)
  • The Cassandra CQL clients do not use prepared statements (#458).
  • The mongodb binding does not honor the maxPoolSize=XX parameter and instead opens a connection per client thread. (see #317)
  • Running directly from a source checkout on Windows is not supported. (see #335)
  • Several unsupported datastore bindings are still listed in CLI help. (see #328)
  • The HBase binding does not report a clear error message on encountering version incompatibility. (see #343)
  • Datastore drivers that lack timeouts may result in YCSB failing to honor the maxexecutiontime parameter. (See #618)
  • Redis Scans are not performant (#636)
  • "Latest" distribution does not work properly on update transactions (#640)
  • Accumulo client currently always claims success even when the record it's supposed to operate on (e.g. for a read) doesn't exist (#699)
  • JDK 9 is not supported (#704)

Changes

  • asyncbase: #718, #714
  • couchbase2: #736, #711
  • core: #727, #529, #719, #674, #694, #696
  • elasticsearch: #721
  • geode: #725
  • googlebigtable: #734, #698, #690
  • googledatastore: #682
  • hbase10: #689
  • hbase098: #688
  • kudu: #720
  • riak: #723, #686
  • scripts: make bin/ycsb work with Python 2.6 in addition to Python 2.7 (#709)

Tested Databases

Datastore bindings that have been changed in this release and verified as working:

Supported bindings, tested in previous releases, unchanged in this release:

Untested:

  • Apache Cassandra versions prior to 2.0 (via cassandra-7, cassandra-8, cassandra-10 bindings), or Cassandra3 (via cassandra2-cql binding) (see #766).
  • Apache HBase prior to 0.98 (via hbase094 binding).
  • HyperTable (via hypertable binding).
  • Infinispan (via infinispan and infinispan-cs bindings)
  • Mapkeeper (via mapkeeper binding)
  • NoSQLDB (via nosqldb binding)
  • OrientDB 2.1.2 (via orientdb binding).

0.9.0-RC1

8 years ago

UPPERCASE WARNING: THIS IS A RELEASE CANDIDATE AND IS NOT INTENDED FOR DOWNSTREAM USE.

This is the first release candidate for 0.9.0. Please see tracking issue #740 for this release and leave your comments there.