Tomasz Grabiec e5feff5d71 dht: ring_position: Switch to total ordering
range::is_wrap_around() and range::contains() rely on total ordering
on values to work properly. Current ring_position_comparator was only
imposing a weak ordering (token positions equal to all key positions
with that token).

range::before() and range::after() can't work for weak ordering. If
the bound is exclusive, we don't know if user-provided token position
is inside or outside.

Also, is_wrap_around() can't properly detect wrap around in all
cases. Consider this case:

 (1) ]A; B]
 (2) [A; B]

For A = (tok1) and B = (tok1, key1), (1) is a wrap around and (2) is
not. Without total ordering between A and B, range::is_wrap_around() can't
tell that.

I think the simplest soution is to define a total ordering on
ring_position by making token positions positioned either before or
after all keys with that token.
2015-07-24 16:08:41 +02:00
2015-01-05 14:13:31 +08:00
2015-07-19 20:48:36 +03:00
2015-07-24 10:54:18 +03:00
2014-10-23 10:46:55 +03:00
2015-07-19 20:48:36 +03:00
2015-03-05 18:11:37 +02:00
2015-05-21 15:17:34 +03:00
2015-06-24 13:09:51 +03:00
2015-07-17 20:02:18 +02:00
2015-07-15 16:20:37 +03:00
2015-07-22 13:14:33 +02:00
2015-07-22 13:13:38 +02:00
2015-07-22 13:13:38 +02:00
2015-07-20 17:32:49 +03:00
2015-07-13 12:57:15 +03:00
2015-07-21 14:46:34 +02:00
2015-04-24 18:01:01 +02:00

#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
No description provided
Readme 307 MiB
Languages
C++ 73.5%
Python 25.3%
CMake 0.3%
GAP 0.3%
Shell 0.3%