Glauber Costa d9b7f4bde3 row consumer: separate processing of buffers from the main loop
In my previous attempt, I have separated the state processor for the main loop,
leaving that to be filled by a derived class.

That felt a lot more natural, because then we don't have to replicate the loop
logic in the derived classes.

But well, oh, well, life is hard. Specially on fast paths. Doing that makes us
insert an extra call in this loop, and that is noticeable: we would be 1.5 %
slower, and that is not even counting the cost of making the state processing a
virtual function later on.

I could just argue that this is acceptable due to decoupling gains, but why I
would argue that, if I can just rewrite it in a way that no performance is
lost?

And then I did. The disadvantage of this, is that the derived class will now
have to re-code the loop, but no performance is lost. Another advantage of
this, is that the derived class will now be able to call into process_buffer
directly, without using virtual functions in this path for any of them.

Signed-off-by: Glauber Costa <glommer@cloudius-systems.com>
2015-08-28 17:30:44 -05:00
2015-08-27 11:01:08 +03:00
2015-07-19 20:48:36 +03:00
2015-08-26 23:50:07 +03:00
2015-08-18 15:48:36 +03:00
2015-07-27 10:14:02 +03:00
2015-08-25 17:07:35 +03:00
2015-08-07 09:30:53 -05:00
2015-08-28 14:47:17 +02:00
2015-08-28 14:47:17 +02:00
2015-07-31 16:27:55 +08:00
2015-08-25 17:07:35 +03:00
2015-08-02 16:07:42 +03:00
2015-07-30 10:56:01 +02:00
2015-08-09 00:05:33 +03: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 --recursive

Building urchin on Fedora

Installing required packages:

sudo yum install yaml-cpp-devel lz4-devel zlib-devel snappy-devel jsoncpp-devel thrift-devel antlr3-tool antlr3-C++-devel libasan libubsan

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 392 MiB
Languages
C++ 72.6%
Python 26.1%
CMake 0.4%
GAP 0.3%
Shell 0.3%