Evan Tschannen
2586bade68
re-added support for configuration TLS options with environment variables
2020-02-26 15:33:48 -08:00
Evan Tschannen
d60268123b
updated comment
2020-02-25 16:00:46 -08:00
Evan Tschannen
6e7d2ff7dd
prevent the proxy from delaying too long based on an incorrect estimate of the compute time
2020-02-25 15:46:13 -08:00
Evan Tschannen
65fbe0d0bc
revert AcceptSocket priority change because of bad performance results
2020-02-21 19:22:14 -08:00
Evan Tschannen
6f1d3ccd35
Merge branch 'release-6.2' into feature-boost-ssl
2020-02-20 20:03:40 -08:00
Evan Tschannen
7056c73f20
fixed a number of problems with findBestPolicySetSimple
2020-02-20 20:00:54 -08:00
Evan Tschannen
dc3826e2fd
fix: tls throttling would re-insert the failure into the map
2020-02-20 18:17:39 -08:00
Evan Tschannen
f04e311a1e
Merge commit 'b46d6e25e24993ab5a5f04091fd3235050b7cd09' into feature-boost-ssl
...
# Conflicts:
# fdbserver/SimulatedCluster.actor.cpp
# flow/Net2.actor.cpp
2020-02-20 17:36:38 -08:00
Evan Tschannen
a50939417b
fix: zoneid is all lower case
2020-02-20 17:26:44 -08:00
Evan Tschannen
f7a37077cc
handshake takes time in simulation
2020-02-20 15:26:56 -08:00
Evan Tschannen
d7c841a28a
Merge pull request #2589 from etschannen/feature-proxy-delay
...
Improve version pipelining on the proxy
2020-02-20 15:23:30 -08:00
Evan Tschannen
8b768e66df
Merge pull request #2694 from dongxinEric/feature/2663/specialize-policy-for-zoneid-in-cc
...
Added a specialized algorithm for PolicyOne and PolicyAcross(,'zoneId…
2020-02-20 14:46:23 -08:00
Evan Tschannen
def8ca6da3
simulation advances timer() separately from now() to better model the real world
2020-02-20 12:10:20 -08:00
Xin Dong
298d6cb3d7
Address review comments.
2020-02-20 09:34:01 -08:00
Evan Tschannen
3c4d551647
improve prioritization of connection monitor and listen given that listen is no longer expensive (because handshake is done separately)
2020-02-19 18:50:21 -08:00
Evan Tschannen
761da5a059
code cleanup
2020-02-19 17:59:45 -08:00
Evan Tschannen
a6486766c2
fix: rebooting an unreliable process will make it reliable again, but while unreliable the files for that process could have already been corrupted so simulation will think a process is healthy that is actually corrupted
2020-02-19 15:18:57 -08:00
Evan Tschannen
46d5f5e325
do not trigger the resetPing if we cannot actually remove the peer, because it will cause us to reset the timeout, so repeated calls to removePeer can keep a dead peer from being removed
2020-02-19 15:17:50 -08:00
Xin Dong
efc0d7f9d5
Added a specialized algorithm for PolicyOne and PoilcyAcross(,'zoneId',PolicyOne()) to find a set of TLog servers which will be able to fulfill the policy later.
2020-02-19 09:25:57 -08:00
Evan Tschannen
dcbce3593e
fixed TLS in simulation
2020-02-10 14:00:21 -08:00
Alex Miller
6b921ac900
Stop building FDBLibTLS and stop linking against libtls.so
...
Which now means OpenSSL and LibreSSL are equally acceptable.
2020-02-06 21:13:58 -08:00
Evan Tschannen
38d8d0d675
fixed simulation
2020-02-06 19:29:31 -08:00
Evan Tschannen
69de430057
separate handshaking from connection to improve pipelining
2020-02-06 16:45:54 -08:00
Evan Tschannen
53d0867a17
limit the number of connections a process can attempt to establish in parallel
2020-02-04 18:15:10 -08:00
Evan Tschannen
84853dd1fd
switched SSL implementation to use boost ssl
2020-02-04 14:56:40 -08:00
Evan Tschannen
231d7830a0
more accurate calculation on the amount of time that proxy should wait before getting a version from the master
2020-01-26 19:47:12 -08:00
Evan Tschannen
afd3ec13ff
added knobs
2020-01-21 18:58:34 -08:00
Evan Tschannen
4a716b85f6
we must still finish accept before the handshake completes
2020-01-21 16:55:34 -08:00
Evan Tschannen
7a4b459f07
wait for a tls handshake to complete before returning a connection
...
wait for multiple tls errors before throttling
2020-01-21 16:45:15 -08:00
Evan Tschannen
0e916fdbed
throttle client TLS errors longer than server errors so that when both happen simultaneously the server throttling will be disabled when the client makes its next attempt
2020-01-12 22:12:18 -08:00
Evan Tschannen
bc4d33a55b
fixed compiler error
2020-01-12 17:01:08 -08:00
Evan Tschannen
1f7eb1f738
throttle outgoing tls connections before establishing a network connection
...
store serverTLSConnectionThrottler map inside of g_network, so that it works properly with simulation
2020-01-12 16:44:30 -08:00
Balachandar Namasivayam
ccfbf04e20
Revert "Throttle both client and server side TLS connections if there is a handshake error."
...
This reverts commit 1b1be9f764
.
2020-01-10 18:41:02 -08:00
Balachandar Namasivayam
1b1be9f764
Throttle both client and server side TLS connections if there is a handshake error.
2020-01-10 18:08:02 -08:00
Balachandar Namasivayam
249e5a73b6
Minor optimization that erases an entry from the map only when it is present.
2020-01-10 16:39:25 -08:00
Balachandar Namasivayam
741aa523e6
Establishing TLS connection through the handshake process is expensive and the fdbserver process can get easily saturated with doing repeated TLS handshakes with only a few hundreds of clients have bad certificate. Hence throttle the number of handshakes done on the server per client ip if it has a bad certificate.
2020-01-10 16:19:41 -08:00
Evan Tschannen
a9541f8066
Merge branch 'feature-addpeer-fix' of github.com:etschannen/foundationdb into feature-addpeer-fix
2020-01-03 12:15:45 -08:00
Evan Tschannen
7152469cc3
log the base trace event before the endpoint messages
2020-01-03 12:15:38 -08:00
Evan Tschannen
6b28e3b43b
Update fdbrpc/LoadBalance.actor.h
...
Co-Authored-By: A.J. Beamon <ajbeamon@users.noreply.github.com>
2020-01-02 17:37:58 -08:00
Evan Tschannen
9e137d3b49
fix: addPeerReference only marks a connection as healthy if it is the first peerReference
...
added additional logging to long LoadBalance calls, and when the failure monitor state changes for an address
2019-12-19 18:26:29 -08:00
Andrew Noyes
b126570a20
Augment tests to catch A.J.'s counterexample
2019-12-05 10:27:12 -08:00
Andrew Noyes
bd9faae1e7
Add a unit test that repros #2406
2019-12-04 16:45:32 -08:00
Andrew Noyes
46d10dc7dc
Fix "null passed as argument declared not null"
...
Fix several such reports from ubsan
E.g.
/Users/anoyes/workspace/foundationdb/flow/Arena.h:794:16: runtime error: null pointer passed as argument 1, which is declared to never be null
2019-12-03 14:46:53 -08:00
Evan Tschannen
746b357b7f
fix: simulation should not allow connections to dead processes
2019-11-21 20:36:40 -08:00
Evan Tschannen
27cb299d84
simulation can sometimes randomly hang or throw connection_failed, instead of always doing one or the other
2019-11-21 16:24:18 -08:00
Evan Tschannen
067dc55bfb
fix: making _conn a state variable was keeping connections open that should be closed
2019-11-21 16:08:32 -08:00
Evan Tschannen
569c6d4476
throws of connection_failed() from net()->connect did not result in clients marking a connection as failed in the failure monitor
2019-11-21 13:08:59 -08:00
Evan Tschannen
2727b91c46
simulation tests network connections failing due to errors instead of just hanging
2019-11-21 12:33:07 -08:00
Evan Tschannen
57fdbbf975
fix: in simulation dead connections need to stop receiving traffic after 1 second
2019-11-15 10:16:44 -08:00
A.J. Beamon
aad9fa3baa
Don't check for too many connections closed on client connections
2019-11-13 13:00:43 -08:00