mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-23 18:10:39 +00:00
ecc3ccc71664603d3cc0b96c025a35787d747e7c
To free memory, we need to allocate memory. In lsa compaction, we convert N segments with average occupancy of (N-1)/N into N-1 new segments. However, to do that, we need to allocate segments, which we may not be able to do due to the low memory condition which caused us to compact anyway. Fix by introducing a segment reserve, which we normally try to ensure is full. During low memory conditions, we temporarily allow allocating from the emergency reserve.
#Urchin
##Building Urchin
In addition to required packages by Seastar, the following packages are required by Urchin.
Submodules
Urchin uses submodules, so make sure you pull the submodules first by doing:
git submodule init
git submodule update
Building urchin on Fedora
Installing required packages:
sudo yum install yaml-cpp-devel lz4-devel zlib-devel snappy-devel jsoncpp-devel
Building urchin on Ubuntu 14.04
Installing required packages:
sudo apt-get install libyaml-cpp-dev liblz4-dev zlib1g-dev libsnappy-dev libjsoncpp-dev
Description
Languages
C++
72.7%
Python
26.1%
CMake
0.3%
GAP
0.3%
Shell
0.3%