New Student Guide

Marcel Kost edited this page Jan 16, 2018 · 14 revisions

The following is a guide for new students to get started on the Peloton project.


If you are a student a CMU that is working with our research group, then please complete the following tasks:

  1. Ask Andy to add you to the peloton-dev mailing list.

  2. Ask Andy to add you to CMU-DB Slack channel. There are three channels relevant to the project:

    • #peloton -- The main discussion for the project. Post all development related questions here.
    • #peloton-tf -- This channel is for the students working on the autonomous components of the system.
    • #peloton-test -- This is for discussion about Peloton's testing framework.
  3. If you need access to the team's testing and development machines, ask Lin Ma to create you an account.

  4. If you want a seat in the 9th floor lab (GHC 9022), please email Jessica Packer (CC Andy) to get a key. Please note that we have a limited number of seats in the lab so not everyone can get a spot. Important: Be sure to return the key before you leave CMU.

Development Environment

We currently support development of Peloton on both Linux and Mac OSX. If you are not using either of these, then you need to follow these instructions to setup a Vagrant VM on your local machine.

  1. Fork the Peloton repository into your personal repo. You will do all your development in this fork and submit pull requests to the master branch.

  2. Install the Peloton pre-commit hook to run automatic validation before every commit.

  3. Install the required packages for the system.

Running the System

  1. Build the system using these instructions.

  2. Start the system from the command-line and connect to it with the Postgres terminal.


The basic test that you should do for benchmarking the system is to run TPC-C. Our OLTP-Bench supports Peloton out of the box.

  • You can directly invoke OLTP-Bench's command-line interface. See these instructions.

  • Alternatively, you can use our deployment script for running multiple trials.

Code Style

A documentation of the preferred coding style for Peloton can be found here. Please read this guide before starting development.

For students who use Clion, you can set your code style: Settings -> Editor -> Code Style -> C/C++ -> Set from...(upper right corner) -> Predefined Style -> Google. It is really helpful if you want to avoid conflictions from format when you first pull request.

Fortunately, you can run the formatter script to modify your code format.

  • You can run
python --help


python -c ../../src/file/to/format.cpp
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.