Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release version 0.2.0 #266

Closed
busbey opened this issue May 29, 2015 · 42 comments
Closed

Release version 0.2.0 #266

busbey opened this issue May 29, 2015 · 42 comments
Labels

Comments

@busbey
Copy link
Collaborator

busbey commented May 29, 2015

I'd like to get 0.2.0 out the door by the end of June. Normally, I'd want to set some goals for things to include in a release, but this one is kind of simpler

  • everything that's gone in the last ~3 years
  • verified working guide for running on windows
  • verification that at least 3 of the bindings work

I expect this first go will be bumpy. To meet the end-of-June goal, I plan to cut a release branch off of master starting June 15th (barring special circumstances).

@busbey
Copy link
Collaborator Author

busbey commented May 29, 2015

If folks could volunteer for testing particular data store bindings that would be a super big help. To make the release notes the testing will have to be on one of the release candidates, but seeing if things work at all right now (and filling in missing READMEs) would be grand.

@busbey
Copy link
Collaborator Author

busbey commented May 29, 2015

I think #250 and #261 will have to be blockers.

@busbey
Copy link
Collaborator Author

busbey commented May 29, 2015

we need a manual check that #91 behaves correctly.

@busbey
Copy link
Collaborator Author

busbey commented Jun 15, 2015

My kid was ill over the weekend, so I didn't get to finish #250. Presuming no one has a strong objection, I'm going to punt the release branch to Wednesday Jun 17th.

@busbey
Copy link
Collaborator Author

busbey commented Jun 17, 2015

All of the blocker and critical issues for 0.2.0 are solved now, so shortly I'll create the release candidate branch and post up what kind of testing I'd like to see here.

@busbey
Copy link
Collaborator Author

busbey commented Jun 18, 2015

release branch blocked on #306

@busbey
Copy link
Collaborator Author

busbey commented Jun 18, 2015

Here's my plan for driving the release:

  1. Branch 0.2.0 (0.2.0-staging) and tag version 0.2.0-RC1 (source only)
  2. Testers should build and use either the distribution artifact (ycsb-0.2.0-RC1.tar.gz) or a binding specific distribution (e.g. ycsb-hbase-0.2.0-RC1.tar.gz)
  3. Testers should file issues/prs for problems found
  4. Fixes for issues should go to master. I'll pull things back to the release staging branch. if you are feeling generous feel free to cherry-pick bug fixes back, but no new functionality please (adding a README.md so that a datastore gets its own distribution tarball is fine)
  5. When issues come up, I'll start cutting new release candidates every other day off of the 0.2.0-staging branch.
  6. When the final release is published, I'll delete the branch. The tag from the release will remain as a starting point if we need to make a patch release.

Successful testing of a datastore binding should be noted here. please include:

  • datastore binding (e.g. hbase)
  • version of datastore tested against (e.g. hbase 1.0.0 cluster)
  • if the datastore has different single node / clustered modes, which was used (e.g. hbase standalone)
  • OS for client
  • packaging used (either the distribution artifact or a datastore specific artifact)
  • workload used
  • other options used

Things we need to get through for a release:

The final release will have

  • notes
    • compatibility changes for workload / bindings downstream
    • datastore binding changes (new bindings or support for additional version support)
    • measurement changes
    • exporter changes
  • source download
  • convenience binary distribution artifact
  • any datastore binding specific tarball that we've tested

@busbey
Copy link
Collaborator Author

busbey commented Jun 18, 2015

Another thing we need to check: licensing for dependencies that are getting packaged in.

busbey added a commit that referenced this issue Jun 19, 2015
As a part of branching to stage 0.2.0 release in #266, set version
for continued development on master branch.
busbey added a commit that referenced this issue Jun 19, 2015
@busbey
Copy link
Collaborator Author

busbey commented Jun 19, 2015

RC1 is available now (ref status page)

@cmccoy
Copy link
Collaborator

cmccoy commented Jun 19, 2015

I'm happy to try HBase, Cassandra.

@busbey
Copy link
Collaborator Author

busbey commented Jun 19, 2015

Excellent. I'll try to get through testing on Windows and take a look at Accumulo.

@allanbank any chance you could take on testing Mongo?

@bigbes could you try out the generated Tarantool artifacts?

@bigbes
Copy link
Collaborator

bigbes commented Jun 19, 2015

@busbey of course, i'll try them tomorrow, if you don't mind?

@busbey
Copy link
Collaborator Author

busbey commented Jun 19, 2015

tomorrow works for me. I'm fairly certain there'll be another RC and I likely won't make that until Sunday or Monday.

@allanbank
Copy link
Collaborator

I will take it for a test drive but probably won't have a solid block of time until Sunday.

@busbey
Copy link
Collaborator Author

busbey commented Jun 19, 2015

Sunday is totally fine.
On Jun 19, 2015 6:07 PM, "allanbank" notifications@github.com wrote:

I will take it for a test drive but probably won't have a solid block of
time until Sunday.


Reply to this email directly or view it on GitHub
#266 (comment)
.

@cmccoy
Copy link
Collaborator

cmccoy commented Jun 19, 2015

I did some quick tests on:
HBase 1.0.0 (hbase-10 client).
Cassandra 2.0.15 (cassandra-cql and cassandra-10 clients).

I ran into #302 and #293, but otherwise things seem to work fine.

Tested:

  • Loading 1000 records (workload A)
  • Running workload A
  • Running workload A with coordinated omission (target=15000; my desktop can't hit that).
  • Running workload A with HDR Histogram + intended latency reporting (latencies get impressively large).

Results in this gist. Things look reasonable to me.

I think #302 is a blocker; I can't decide about #293.

@busbey
Copy link
Collaborator Author

busbey commented Jun 20, 2015

With #302 closed now I'll make a new RC tomorrow morning so folks who want to test over the weekend don't hit it.

@busbey
Copy link
Collaborator Author

busbey commented Jun 20, 2015

@steffenfriedrich if you have the time to try out the different exporters using the release candidate that would be a big help. Understandable if you're too busy.

busbey added a commit that referenced this issue Jun 20, 2015
@busbey
Copy link
Collaborator Author

busbey commented Jun 20, 2015

RC2 is now available. If you are still testing, please switch to it. (ref release page)

@busbey
Copy link
Collaborator Author

busbey commented Jun 20, 2015

filed #313 for current RAT flagged failures. I'll check them one more time to make sure it's just missing headers (there's a bunch of noise). Presuming it's just the missing headers it's not a blocker.

@allanbank
Copy link
Collaborator

I am not finding the Client when I run from the command line:

$ bin/ycsb load -db mongodb -s -P workloads/workloada -threads 10 -p "mongodb.url=mongodb://192.168.1.15:27017/ycsb?w=1&maxPoolSize=10&waitQueueMultiple=10"
java -cp /home/rjmoore/ycsb-testing/YCSB-0.2.0-RC2/mongodb-binding/conf com.yahoo.ycsb.Client -db com.yahoo.ycsb.db.MongoDbClient -db -s -P workloads/workloada -threads 10 -p mongodb.url=mongodb://192.168.1.15:27017/ycsb?w=1&maxPoolSize=10&waitQueueMultiple=10 -load
Error: Could not find or load main class com.yahoo.ycsb.Client

This was a fresh pull on the RC2 source followed by a mvn clean package:

wget https://github.com/brianfrankcooper/YCSB/archive/0.2.0-RC2.tar.gz
tar xzvf 0.2.0-RC2.tar.gz
cd YCSB-0.2.0-RC2/
mvn clean package 

I can run test if I unpack the MongoDB distribution.

The README for the MongoDB driver is based on pulling the source, running a mvn package and then running from the source directory. Is that no longer supported? Is the plan to provide pre-build binary distributions?

Rob.

@busbey
Copy link
Collaborator Author

busbey commented Jun 21, 2015

We do provide binary distributions as well as source. The preference will
be use of the binaries, since it's less steps to mess up.

We should still have running out of a built source tree though. Can you
file an issue? Not sure if it should be considered blocking.

We'll need to do a sweep of the instructions either way.
On Jun 21, 2015 6:01 PM, "allanbank" notifications@github.com wrote:

I am not finding the Client when I run from the command line:

$ bin/ycsb load -db mongodb -s -P workloads/workloada -threads 10 -p "mongodb.url=mongodb://192.168.1.15:27017/ycsb?w=1&maxPoolSize=10&waitQueueMultiple=10"
java -cp /home/rjmoore/ycsb-testing/YCSB-0.2.0-RC2/mongodb-binding/conf com.yahoo.ycsb.Client -db com.yahoo.ycsb.db.MongoDbClient -db -s -P workloads/workloada -threads 10 -p mongodb.url=mongodb://192.168.1.15:27017/ycsb?w=1&maxPoolSize=10&waitQueueMultiple=10 -load
Error: Could not find or load main class com.yahoo.ycsb.Client

This was a fresh pull on the RC2 source followed by a mvn clean package:

wget https://github.com/brianfrankcooper/YCSB/archive/0.2.0-RC2.tar.gz
tar xzvf 0.2.0-RC2.tar.gz
cd YCSB-0.2.0-RC2/
mvn clean package

I can run test if I unpack the MongoDB distribution.

The README for the MongoDB driver is based on pulling the source, running
a mvn package and then running from the source directory. Is that no
longer supported? Is the plan to provide pre-build binary distributions?

Rob.


Reply to this email directly or view it on GitHub
#266 (comment)
.

@allanbank
Copy link
Collaborator

Submitted #315.

@allanbank
Copy link
Collaborator

See issue #316. Not a blocker as far as I am concerned but fixing improves usability.

@allanbank
Copy link
Collaborator

I finished the first round of testing with MongoDB. For this round I ran each workload (a-f) against a single MongoDB instance running on the same machine as the the YCSB client. For each run I varied the number of client threads and connection to MongoDB and the version of MongoDB running.

Tested Versions:

  • MongoDB 1.8.5: mongodb-async (the mongodb does not support 1.8).
  • MongoDB 2.0.9: mongodb and mongodb-async
  • MongoDB 2.2.7: mongodb and mongodb-async
  • MongoDB 2.4.14: mongodb and mongodb-async
  • MongoDB 2.6.10: mongodb and mongodb-async
  • MongoDB 3.0.4: mongodb and mongodb-async

That is the latest patch release for all production MongoDB versions released since 2011.

All MongoDB instance ran with a single command line option:

mongod --dbpath .

Issues Found:

#315 - Cannot run YCSB from the source tree.
#316 - StatusThread keeping the client running for 20 seconds after the test completes.
#314 - Saw several instances of reads in Workload D returning 1 which means the query did not find the document.

I will do another round of tests with MongoDB 3.0.4 varying the storage engine and the cluster configuration.

Rob

@bigbes
Copy link
Collaborator

bigbes commented Jun 22, 2015

@busbey i'm sorry for delay, i'll check this today

@busbey
Copy link
Collaborator Author

busbey commented Jun 22, 2015

No worries, we all get busy. Thanks for whatever time you get to spend on
things.
On Jun 22, 2015 1:45 PM, "bigbes" notifications@github.com wrote:

@busbey https://github.com/busbey i'm sorry for delay, i'll check this
today


Reply to this email directly or view it on GitHub
#266 (comment)
.

@busbey
Copy link
Collaborator Author

busbey commented Jun 24, 2015

Issue #301 is now in the staging branch. I'd like to get #315 in before cutting RC3. If no one else gets to it I'll take care of it in time for an RC on wednesday night (CT).

@bigbes
Copy link
Collaborator

bigbes commented Jun 24, 2015

@busbey I've tested Tarantool bindings from distribution. Everything works fine, except scan operation (#319). I'll check it and fix it

busbey added a commit that referenced this issue Jun 30, 2015
@busbey
Copy link
Collaborator Author

busbey commented Jun 30, 2015

RC3 is now available. if you are still testing, please use it (release page)

@allanbank
Copy link
Collaborator

There is an issue with the MongoDbClient doing scan operations. I have been working with the MongoDB folks to try and figure out what the issue is but I think it is within the driver itself. MongoDB ticket is: https://jira.mongodb.org/browse/SERVER-19273

Rob.

@busbey
Copy link
Collaborator Author

busbey commented Jul 5, 2015

last week I ran RC2's hbase specific distribution through the recommended series of core workloads using the hbase-10 client against an HBase CDH5 cluster. Everything went fine, including export to JSONArray (didn't try the export to non-JSONArray version)

@busbey
Copy link
Collaborator Author

busbey commented Jul 6, 2015

I ran through using RC3 for the basic binding on Windows 7. Ran into #335, but otherwise was fine. Added a proposed wiki page to #246.

Based on going through that walk-through, it'd be worth adding zip files for our distribution artifacts.

@busbey
Copy link
Collaborator Author

busbey commented Jul 6, 2015

Ran RC3 through the recommended workload sequence for ~1 hour per step against an Accumulo cluster. Ran into #340 at cleanup of the initial load step, but otherwise everything looked fine.

@busbey
Copy link
Collaborator Author

busbey commented Jul 6, 2015

@allanbank since the issue is in the Mongo driver and only impacts scan workloads, are we fine just labeling it a known issue? we can then fix it in the YCSB release after whatever gets worked out on the mongo ticket.

@busbey
Copy link
Collaborator Author

busbey commented Jul 6, 2015

I think all that's left before release is

I'll start writing up draft release notes tomorrow.

@allanbank
Copy link
Collaborator

@busbey - I wrote a ticket (#344) for the MongoDB scan issue so you can reference it in the release notes. (and I can commit against it once it get fixed).

@busbey
Copy link
Collaborator Author

busbey commented Jul 7, 2015

proposed release notes

@busbey
Copy link
Collaborator Author

busbey commented Jul 7, 2015

worth noting that the issue refs (e.g. #266) will show up as links when in the release notes.

@allanbank
Copy link
Collaborator

Release notes look good to me.

busbey added a commit that referenced this issue Jul 8, 2015
@busbey
Copy link
Collaborator Author

busbey commented Jul 8, 2015

release is live: https://github.com/brianfrankcooper/YCSB/releases/tag/0.2.0

Thanks everyone! Let's start sending announcement emails.

@busbey busbey closed this as completed Jul 8, 2015
@cmccoy
Copy link
Collaborator

cmccoy commented Jul 8, 2015

Thanks, Sean!
On Jul 7, 2015 7:24 PM, "Sean Busbey" notifications@github.com wrote:

Closed #266 #266.


Reply to this email directly or view it on GitHub
#266 (comment).

jaricftw pushed a commit to jaricftw/YCSB that referenced this issue Jul 19, 2016
As a part of branching to stage 0.2.0 release in brianfrankcooper#266, set version
for continued development on master branch.
jaricftw pushed a commit to jaricftw/YCSB that referenced this issue Jul 19, 2016
As a part of branching to stage 0.2.0 release in brianfrankcooper#266, set version
for continued development on master branch.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants