eecca3f9e8
When Redis backup was implemented, using the save() command was chosen as it blocks, making the code simpler to read and understand. Unfortunately SAVE and BGSAVE have differences beyond one being synchronous and the other asynchronous, in that SAVE also blocks client connections while it runs. This behaviour is not optimal, so the code was changed to use BGSAVE and wait until it completes. In the case where bgsave() fails (possibly due to memory issues, save() is called so that the backup will still complete. The Redis helper was also modified to allow adding more data (to increase the time the backup takes) and tests were rearranged to improve chances of success. Change-Id: I75d9df54b8550b08ce0112e516c17fd717ebb857 Closes-Bug: #1538334 |
||
---|---|---|
apidocs | ||
contrib | ||
devstack | ||
doc | ||
etc | ||
releasenotes | ||
tools | ||
trove | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.testr.conf | ||
CONTRIBUTING.rst | ||
LICENSE | ||
MANIFEST.in | ||
README.rst | ||
babel.cfg | ||
doc-test.conf | ||
generate_examples.py | ||
requirements.txt | ||
run_tests.py | ||
run_tests.sh | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
Trove
Trove is Database as a Service for OpenStack.
Usage for integration testing
If you'd like to start up a fake Trove API daemon for integration testing with your own tool, run:
$ ./tools/start-fake-mode.sh
Stop the server with:
$ ./tools/stop-fake-mode.sh
Tests
To run all tests and PEP8, run tox, like so:
$ tox
To run just the tests for Python 2.7, run:
$ tox -epy27
To run just PEP8, run:
$ tox -epep8
To generate a coverage report,run:
$ tox -ecover
(note: on some boxes, the results may not be accurate unless you run it twice)
If you want to run only the tests in one file you can use testtools e.g.
$ python -m testtools.run trove.tests.unittests.python.module.path