Sébastien Blin
9f987e24fe
Merge pull request #277 from savoirfairelinux/proxy_refresh
...
proxy client: independently resubscribe push listeners
2018-04-30 10:56:18 -04:00
Sébastien Blin
95f1d59a7f
proxy: add comment for refresh job
2018-04-30 10:42:39 -04:00
Sébastien Blin
2ce0c5c4c9
proxy: restart listeners if the proxy server close the connection
...
Detect if the proxy server close the connection linked to a listener and
relaunch listeners
2018-04-26 16:45:14 -04:00
Adrien Béraud
b26b78c049
dhtrunner: fix warnings
2018-04-21 17:57:59 -04:00
Adrien Béraud
522a15c410
proxy client: refresh persistent put with margin
2018-04-21 17:57:59 -04:00
Adrien Béraud
6a981772fd
proxy server: cleanup
2018-04-21 17:57:59 -04:00
Adrien Béraud
cc37fb50e2
proxy client: take persistent put by reference
2018-04-21 17:44:45 -04:00
Adrien Béraud
1c9acfe001
proxy client: call opFailed on failure
2018-04-21 15:08:48 -04:00
Adrien Béraud
c6cef856f0
proxy server: cleanup
2018-04-21 12:23:33 -04:00
Adrien Béraud
9f503dbb65
proxy client: loopSignal on put refresh notification
2018-04-21 12:22:58 -04:00
Adrien Béraud
7e4478123f
proxy client: use time_point::max() on persistent put
2018-04-21 12:22:00 -04:00
Adrien Béraud
e54d26aaf7
dhtrunner: handle push notification on main dht loop
2018-04-21 12:21:00 -04:00
Sébastien Blin
9421984a89
proxy: cancelPushListeners using clientId instead of token
...
All listeners uses a token equals to 0, we need to identify listeners
with client_id instead of a token.
2018-04-20 16:37:12 -04:00
Sébastien Blin
37ef1c2cff
proxy: set clientId to listener
...
clientId was not properly set. so every time someone launch a node
and do a listen on a hash, a new listener is generated and it results
by flooding the node of push notifications.
2018-04-20 16:19:03 -04:00
Sébastien Blin
0a04a7f28d
proxy: unsubscribe is now valid with token equals 0
...
Because we now have one listener for each client by hash, the token
is unnecessary here. Moreover, this check is invalid cause we use
a token equal to 0.
2018-04-20 15:25:57 -04:00
Adrien Béraud
4b7b3cd518
dhtrunner: use proper token with cancelListen(future<token>)
2018-04-20 13:35:13 -04:00
Adrien Béraud
1a2d783c2a
op cache: keep listeners alive for some time after cancel
2018-04-20 11:35:45 -04:00
Adrien Béraud
f98658f10f
proxy client: independently resubscribe push listeners
2018-04-19 11:32:22 -04:00
Adrien Béraud
e140116fed
proxy client: close old socket when restarting listeners
2018-04-19 11:31:08 -04:00
Adrien Béraud
da1b7d4615
proxy server: send refresh notification with margin
2018-04-16 15:05:28 -04:00
Adrien Béraud
7b3ce69b62
proxy client: send remote token on cancel
2018-04-16 15:04:57 -04:00
Adrien Béraud
8a52a7f72a
build: add missing files, cleanup
2018-04-16 14:17:52 -04:00
Adrien Béraud
abb9f9291b
proxy server: avoid unneeded copy
2018-04-14 18:15:02 -04:00
Adrien Béraud
e533f5686e
proxy server: use std::lock to avoid deadlock
2018-04-14 18:14:42 -04:00
Adrien Béraud
4234908b69
proxy server: check refresh job
2018-04-13 15:59:46 -04:00
Adrien Béraud
c10c4251b0
proxy server: print stats to stdout once in a while
2018-04-13 15:52:56 -04:00
Adrien Béraud
8b90c47379
proxy server: add logs
2018-04-13 15:06:49 -04:00
Adrien Béraud
a48a965c1a
proxy server: catch exceptions in requests, always close connection
2018-04-13 14:01:09 -04:00
Adrien Béraud
ab0f4f6f17
proxy client: refresh now in case of refresh notification
2018-04-13 11:14:40 -04:00
Adrien Béraud
e3114cd5b9
proxy client: catch name resolving exception
2018-04-13 11:09:34 -04:00
Adrien Béraud
8489433060
network engine: expire node on next run on network failure
2018-04-11 11:27:46 -04:00
Adrien Béraud
e088cd10be
proxy server: keep only one push listener per token.key.clientId
2018-04-10 16:01:14 -04:00
Adrien Béraud
7b88a2122a
proxy: always use string tokens
2018-04-10 12:48:19 -04:00
Adrien Béraud
6a2f61a0db
dht: fix compilation warnings
2018-04-10 12:48:19 -04:00
Adrien Béraud
4884306135
proxy client: restart listeners on reconnect
...
* track IPv4, IPv6 connectivity seperately
* properly restart listeners when connected
* get proxy info in parallel for multiple AF
2018-04-08 19:54:43 -04:00
Adrien Béraud
fd11a4b3e4
proxy client: prevent callback during cancelAllListeners
2018-04-08 19:54:00 -04:00
Adrien Béraud
b3c637536f
proxy client: prevent use-after-free after destruction
2018-04-08 19:54:00 -04:00
Adrien Béraud
1436af0321
value cache: prevent callback copy on move
2018-04-08 19:54:00 -04:00
Adrien Béraud
1debe012c1
proxy client: restart listeners on connectivity change
2018-04-08 19:54:00 -04:00
Adrien Béraud
368a842d2e
proxy client: don't block resolving address
2018-04-08 19:53:59 -04:00
Adrien Béraud
d250e9b630
proxy client: avoid sending listen with push notifications
2018-04-08 19:53:59 -04:00
Adrien Béraud
3ff6863287
proxy client: add logs
2018-04-08 19:53:59 -04:00
Adrien Béraud
567fa1c703
proxy client: retrieve search from callback
2018-04-06 11:43:51 -04:00
Adrien Béraud
20ab71aba6
securedht: check public key
2018-04-05 14:23:15 -04:00
Adrien Béraud
1acace1b91
proxy client: add missing mutex, cleanup
2018-04-05 02:35:01 -04:00
Adrien Béraud
2f423fec48
crypto: check public key for null before pack or print
2018-04-05 02:33:58 -04:00
Adrien Béraud
7be550bf94
value cache: use single callback
2018-04-05 02:08:58 -04:00
Sébastien Blin
5b71af3cec
proxy: remove useless callback_id
...
callback_id was used for token problems which are not present anymore.
Now token is sufficient and we can remove callback_id.
2018-04-03 10:43:56 -04:00
Adrien Béraud
fcf7111872
scheduler: avoid possible overflow with buggy stdlib
2018-03-29 11:58:26 -04:00
Sébastien Blin
62bbce76f2
scheduler: avoid overflow causing 100% cpu usage
2018-03-29 11:40:04 -04:00