An intelligent loadtester
C++ M4 Shell Makefile Thrift
Switch branches/tags
Nothing to show
Clone or download
elliottneilclark and facebook-github-bot Don't move to PAUSED if already running
Summary: If using wait for runner gflag, it's possible that someone could have called resume2 before the scheduler has fully started. Previously we were always moving to PAUSED. We only want to do that if it's not already running.

Differential Revision: D8883588

fbshipit-source-id: 317d83b8cb956ee0d0ac184927db53b7b6950799
Latest commit 16e9944 Jul 20, 2018
Permalink
Failed to load latest commit information.
if Add interface to change max outstanding requests Mar 27, 2018
m4 Fix the OSS build Feb 13, 2017
scripts Suppress lint in old files Jan 30, 2018
services WorkloadBase class for workloads in treadmill Feb 15, 2018
test Fix Treadmill build error Feb 14, 2018
.gitignore Update the open source build system Jul 13, 2016
.travis.yml Fix the OSS build Feb 13, 2017
CONTRIBUTING.md fix minor typo in documentation Aug 4, 2016
Connection.h Update the open source build system Jul 13, 2016
ContinuousStatistic.cpp treadmill: avoid use after free Apr 20, 2018
ContinuousStatistic.h Add number of calibration/warm-up requests as parameters Aug 29, 2016
CounterStatistic.cpp fbcode: remove unused includes from .cpp files with no #if and #define Dec 18, 2016
CounterStatistic.h apply clang-tidy modernize-use-override Jun 9, 2017
Event.h Add interface to change max outstanding requests Mar 27, 2018
Histogram.cpp fixing treadmill's gcc5 build Jan 19, 2017
Histogram.h Initial commit Jun 29, 2016
LICENSE Initial commit Jun 29, 2016
Makefile.am Make/CMake build fixes after adding a new Thrift generated file Nov 30, 2016
PATENTS Initial commit Jun 29, 2016
README.md Update the open source build system Jul 13, 2016
RandomEngine.cpp Fix Treadmill build error Feb 14, 2018
RandomEngine.h Fix Treadmill build error Feb 14, 2018
Request.h Initial commit Jun 29, 2016
Scheduler.cpp Don't move to PAUSED if already running Jul 20, 2018
Scheduler.h Make resume2's success field indicate if treadmill is running Jul 20, 2018
Statistic.h Update the open source build system Jul 13, 2016
StatisticsManager.cpp Codemod folly::make_unique to std::make_unique Jan 13, 2017
StatisticsManager.h Add number of calibration/warm-up requests as parameters Aug 29, 2016
Treadmill.cpp treadmill: avoid use after free Apr 20, 2018
Treadmill.h treadmill: avoid use after free Apr 20, 2018
TreadmillFB303.cpp Make resume2's success field indicate if treadmill is running Jul 20, 2018
TreadmillFB303.h Add interface to change max outstanding requests Mar 27, 2018
Util.cpp fbcode: String.h -> UTF8String.h includes Apr 5, 2018
Util.h Initial commit Jun 29, 2016
Worker.h Don't move to PAUSED if already running Jul 20, 2018
Workload.h treadmill passing phase info to hhvm Feb 15, 2018
configure.ac Fix the OSS build Feb 13, 2017

README.md

Treadmill Build Status

Treadmill is an open-source modular load testing platform for characeterizing server-side applications (e.g., Memcached, Mcrouter, and FBThrift.

Installation

The installation is done using a standard autotools flow. To install Treadmill at /path/to/install, you can simply use the script as following.

$ ./scripts/install_ubuntu_14.04.sh /path/to/install

Running

Once you have installed Treadmill, you can run the corresponding binary. For example, you can test against a Memcached instance on 127.0.0.1:11211 by:

$ LD_LIBRARY_PATH="/path/to/install/install/lib:$LD_LIBRARY_PATH" \
    ./treadmill_memcached --hostname=127.0.0.1 --port=11211

You can also add the /path/to/install/install/lib permanently to $LD_LIBRARY_PATH, so you do not have to type it in every time. More advanced options can be found in --help.

License

Treadmill is BSD-licensed. We also provide an additional patent grant.

Contributing

We would love to have your help in making Treadmill better. If you are interested, please read our guide to contributing.