Simon Désaulniers
c04ede4909
dht: unify bootstrapSearch and refill method
...
Since bootstrapSearch was rewritten to use the node cache, it made it clear that
refill should be rewritten as such. However, then bootstrapSearch becomes
irrelevant.
An enhancement to refill is that it will let insertNode review its whole list
of nodes and then let it insert nodes up to SEARCH_NODES nodes. The previous
method would not garantee this behavior since, most of the times, it would pass
less than SEARCH_NODES nodes to insertNode.
2016-08-06 21:14:17 -04:00
Adrien Béraud
a1eaf2e83c
Merge pull request #107 from sim590/minor-search-refactor
...
dht: more accurate name for requested nodes count
2016-08-05 23:03:25 -04:00
Simon Désaulniers
a21d4d4adc
queries: fix deserialization bug
...
Only the first two entries of the array would be accessed in a consistent way.
Therefor, only the two first field value index would be returned.
2016-08-05 21:20:58 -04:00
Simon Désaulniers
f0a92d999c
dht: more accurate name for requested nodes count
...
The number of currently requested nodes, formerly named currentGetRequests, was
renamed since it was not accurately describing the behavior. The number we are
counting is not the number of 'get' requests, but rather the number of nodes
being requested simultaneously.
2016-08-05 21:19:46 -04:00
Simon Désaulniers
28a3498a69
dht: fixing timing in SearchNode::canGet
...
When a 'get' request associated with a certain 'query' has been sent, we don't
want to send it again, i.e. we don't care if it's pending or not as soon as it
has been sent.
2016-08-05 21:17:58 -04:00
Simon Désaulniers
7eb5d892f1
search: isDone computes using Request interface
...
There's no need to compute with time since the network engine gives us the
information we need.
2016-08-05 21:17:11 -04:00
Simon Désaulniers
f6cd79952c
node_cache: fix bad condition in getCachedNodes
2016-08-05 13:07:14 -04:00
Adrien Béraud
9c1a0ae27f
freenode: fix typo
2016-08-05 10:23:08 -04:00
Simon Désaulniers
29c1a955d0
readme: add freenode irc opendht channel
2016-08-04 18:33:56 -04:00
Nicolas
b366432a8a
Merge pull request #103 from sim590/sendlisten-loop
...
dht: fix sendListen loop bug
2016-08-04 10:25:22 -04:00
Simon Désaulniers
af8bfdc1c1
dht: fix sendListen loop bug
...
Each time a 'listen' request is sent to the network engine, we track this
request in the upper layer with a map<shared_ptr<Query>, shared_ptr<Request>>.
At some point, this map has to be maintained or totally cleared. However, it was
done wrong, hence the sendListen loop. Clearing a pair <Query, Request> has to
be done when the API user cancels a 'listen' operation.
2016-08-03 18:49:37 -04:00
Simon Désaulniers
88040ad467
dht: display debug info according to query impact
2016-08-03 18:49:10 -04:00
Simon Désaulniers
a35e67bcdf
Merge pull request #101 from kaldoran/optimize_search
...
dht: bootstrap from node cache instead of routing table
2016-08-03 15:31:07 -04:00
kaldoran
df3317a5b2
dht: bootstrap from cache instead of routing table
2016-08-03 10:04:02 -04:00
kaldoran
33f95c00a9
NodeCache: getNode takes bool not int
...
Since this was old code which use int as bool I edit that for a bool [and change related code]
2016-08-02 18:57:20 -04:00
Adrien Béraud
7383505dcc
value: increase max value size to 16KiB
2016-08-01 10:47:21 -04:00
Adrien Béraud
2c9a29af0e
docker: add python, lto, msgpack 2.0
2016-08-01 01:18:37 -04:00
Adrien Béraud
5847273b79
travis: add llvm docker build
2016-07-29 21:37:43 -04:00
Adrien Béraud
98204991ec
travis with docker
2016-07-29 21:37:43 -04:00
Adrien Béraud
b8e10bfe15
const shared_ptr
2016-07-29 21:37:07 -04:00
Adrien Béraud
132fe66699
dhtnode: cleanup
2016-07-29 15:49:43 -04:00
Adrien Béraud
a28fc4dfb1
tools: remove optional arguments
2016-07-29 15:39:50 -04:00
Nicolas
7721aa5643
api: Add value creation timepoint ( #97 )
2016-07-28 17:03:11 -04:00
Nicolas
68707aff17
dht: prevent outdated store of value
2016-07-28 16:58:04 -04:00
Adrien Béraud
3ecbc9adff
Merge pull request #95 from sim590/consistent-so-versionning
...
autotools: versionning consistent with CMake
2016-07-25 17:09:56 -04:00
Simon Désaulniers
b5a7a0ca31
autotools: versionning consistent with CMake
2016-07-25 17:03:57 -04:00
Nicolas
2362db8528
Merge pull request #94 from sim590/storage-unique-ptr
...
dht: make main store a vector<unique_ptr<Storage>>
2016-07-22 17:02:21 -04:00
Simon Désaulniers
62835bdc54
dht: make main store a vector<unique_ptr<Storage>>
...
Since the elements inside are going to be moved constantly during the life of
the node, this design is better. Also, it works around a crash when the store is
resized (elements inside moved) at some point (always happenned the 3rd time)
for some reason. This bug was known when compiled with LLVM >7.3.0 (>clang-703.0.31).
2016-07-22 16:57:46 -04:00
Nicolas
fe1cf209f1
Merge pull request #93 from sim590/select-consistency
...
dht: return consistent query from local storage
2016-07-19 16:47:44 -04:00
Simon Désaulniers
2f72563b1f
dht: return consistent query from local storage
...
When querying from local storage with SELECT f, a FieldValueIndex with empty
fields was returned without considering the SELECT statement requiring only a
field "f".
2016-07-19 15:52:21 -04:00
Simon Désaulniers
0d754d6ca8
doc: clarify dhtnode usage
2016-07-19 14:00:34 -04:00
Simon Désaulniers
f474f6499b
value: missing return, errors on non-gcc
...
Gcc understands the syntax without return value, but this confuses other
compilers.
2016-07-18 14:18:37 -04:00
Adrien Béraud
97baacf609
Merge pull request #79 from sim590/queries
...
[DHT] Queries: remote values filtering
2016-07-11 20:23:15 +02:00
Simon Désaulniers
0fa8cfdb71
tools: enable queries in dhtnode
2016-07-10 19:26:13 +02:00
Simon Désaulniers
78c7cae7e9
dhtrunner: add query in dhtrunner API
2016-07-10 19:26:13 +02:00
Simon Désaulniers
a4834efd37
dht: use queries in dht
2016-07-10 19:26:13 +02:00
Simon Désaulniers
07e4435a07
value: add Query relevant structures
2016-07-10 19:26:04 +02:00
zorun
9f93771771
doc: Fix install path of man page ( #90 )
...
Man pages go in /usr/share/man
http://www.pathname.com/fhs/pub/fhs-2.3.html#USRSHAREMANMANUALPAGES
2016-07-02 14:32:43 +02:00
Simon Désaulniers
a533807fcf
doc: add missing CMakeLists.txt
2016-07-02 01:20:46 +02:00
Simon Désaulniers
49129ec1b2
tools: specify optional arg syntax -o[ARG]
2016-06-30 01:33:14 +02:00
Simon Désaulniers
803354552f
build-tools: distribute dhtnode.1 manpage
2016-06-30 00:58:04 +02:00
Simon Désaulniers
fa6c365679
doc: fix typos in dhtnode manpage
2016-06-29 20:57:30 +02:00
Adrien Béraud
6ac1ae3527
Merge pull request #84 from sim590/dhtnode-user-experience
...
[dhtnode] user experience
2016-06-28 14:55:27 -04:00
Simon Désaulniers
29834b714e
dhtnode: manpage and add all options in help text
2016-06-28 18:51:40 +02:00
Simon Désaulniers
bba27adf4d
dhtnode: fix getopt optional arg parsing
2016-06-27 21:14:54 +02:00
Simon Désaulniers
e3a280d7a9
Merge pull request #82 from aviau/typos
...
fixed typos
2016-06-27 19:46:17 +02:00
aviau
63f1a736f4
fixed typos
2016-06-27 19:33:52 +02:00
Simon Désaulniers
0f8720c433
Merge pull request #80 from aviau/powerful
...
readme: fix typo s/powerfull/powerful/
2016-06-27 15:39:55 +02:00
aviau
7a6263b940
typo: powerfull ->powerful
2016-06-27 15:29:35 +02:00
Adrien Béraud
b09e3df2e2
add network id to distinguish different networks
2016-06-21 03:06:47 -04:00