mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-31 12:06:44 +00:00
934ba7ccb22650d8ee6257f236bbce16a05734f2
" As part of implementing sstables manager and fixing issue related to updating large_data_handler on all delete paths, we want to funnel all sstable creations, loading, and deletions through a manager. The patchset lays out test infrastructure to funnel these opeations through class sstables::test_env. In the process, it cleans up many numerous call sites in the existing unit tests that evolved over time. Refs #4198 Refs #4149 Tests: unit (dev) " * 'projects/test_env/v3' of https://github.com/bhalevy/scylla: tests: introduce sstables::test_env tests: perf_sstable: rename test_env tests: sstable_datafile_test: use useable_sst tests: sstable_test: add write_and_validate_sst helper tests: sstable_test: add test_using_reusable_sst helper tests: sstable_test: use reusable_sst where possible tests: sstable_test: add test_using_working_sst helper tests: sstable_3_x_test: make_test_sstable tests: run_sstable_resharding_test: use default parameters to make_sstable tests: sstables::test::make_test_sstable: reorder params tests: test_setup: do_with_test_directory is unused tests: move sstable_resharding_strategy_tests to sstable_reharding_test tests: move create_token_from_key helpers to test_services tests: move column_family_for_tests to test_services dht: move declaration of default_partitioner from sstable_datafile_test to i_partitioner.hh
…
…
…
…
…
…
Scylla
Quick-start
$ git submodule update --init --recursive
$ sudo ./install-dependencies.sh
$ ./configure.py --mode=release
$ ninja-build -j4 # Assuming 4 system threads.
$ ./build/release/scylla
$ # Rejoice!
Please see HACKING.md for detailed information on building and developing Scylla.
Note: GCC >= 8.1.1 is require to compile Scylla.
Note: See frozen toolchain for a way to build and run on an older distribution.
Running Scylla
- Run Scylla
./build/release/scylla
- run Scylla with one CPU and ./tmp as data directory
./build/release/scylla --datadir tmp --commitlog-directory tmp --smp 1
- For more run options:
./build/release/scylla --help
Building Fedora RPM
As a pre-requisite, you need to install Mock on your machine:
# Install mock:
sudo yum install mock
# Add user to the "mock" group:
usermod -a -G mock $USER && newgrp mock
Then, to build an RPM, run:
./dist/redhat/build_rpm.sh
The built RPM is stored in /var/lib/mock/<configuration>/result directory.
For example, on Fedora 21 mock reports the following:
INFO: Done(scylla-server-0.00-1.fc21.src.rpm) Config(default) 20 minutes 7 seconds
INFO: Results and/or logs in: /var/lib/mock/fedora-21-x86_64/result
Building Fedora-based Docker image
Build a Docker image with:
cd dist/docker
docker build -t <image-name> .
Run the image with:
docker run -p $(hostname -i):9042:9042 -i -t <image name>
Contributing to Scylla
Description
Languages
C++
72.3%
Python
26.5%
CMake
0.3%
GAP
0.3%
Shell
0.3%