Tommi Virtanen
b54e1cbe99
Handle and report errors in readwrite test workers.
2011-07-20 11:32:52 -07:00
Tommi Virtanen
f3b5ed6ccc
Say "worker_id" instead of name, as I keep confusing it with filenames.
2011-07-20 11:15:06 -07:00
Tommi Virtanen
1eb38e09e4
Link worker greenlets to parent, so we abort if they have an unhandled exception.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
9ecaf63fbe
Code layout cleanup.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
deb8be9957
Make readwrite test put objects one by one, so it can report keys.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
9e707b897d
Remove the concept of batches from readwrite test.
...
That's an internal implementation detail caused by
the generate_objects api.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
4cd4131dd7
Don't eat exceptions, that's a bad habit.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
648ddbb761
Log readwrite test results in yaml.
...
This temporarily removes the statistics calculation; that
belongs somewhere else anyway, so it can be run on aggregated
results etc.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
ed966af0a7
Use more idiomatic Python.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
ad444b33ee
Make queue and name arguments not optional; they're always passed in anyway.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
71cfd4956c
Move end test logic out of individual workers.
...
Parent waits for the duration anyway, just make it unconditionally
kill the workers. They already had timeouts aborting them; they may
be in the middle of an operation, but we really don't care, time's up.
This also avoids oddities with the queue where there may be items
after the StopIteration.
This also avoids workers potentially not exiting within the 1-second
timeout the old code had.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
dff6b568e4
Use gevent Groups to manage groups of workers.
...
This mostly adds convenience functions, but it's nice to have.
2011-07-20 11:06:30 -07:00
Tommi Virtanen
fe749adebf
pep8 cleanup.
2011-07-19 09:09:51 -07:00
Steven Berler
c312832c70
use time.time() instead of time.clock()
...
We want to measure actual time, not cpu time.
2011-07-14 11:40:26 -07:00
Steven Berler
7b51f55a1b
fix zero devision error in readwrite test
...
Was dividing by 0 if somehow it managed to upload or download a file
in under .01 seconds.
2011-07-14 11:00:48 -07:00
Tommi Virtanen
02a4c82dfa
Make generate_objects.py and rand_readwrite.py inside the package.
...
Handle dependencies properly. Now e.g. "./bootstrap &&
./virtualenv/bin/s3tests-test-readwrite" should just work.
2011-07-13 13:52:54 -07:00