Evan Tschannen
f1dca05cf3
Merge pull request #3194 from etschannen/feature-small-endpoint
...
Optimized failure monitor performance
2020-05-20 14:48:13 -07:00
Evan Tschannen
6a006c4c1f
use the first RequestStream as the base endpoint
2020-05-20 13:52:22 -07:00
Evan Tschannen
459186dad0
revert previous change to bit shift
2020-05-20 12:32:50 -07:00
Evan Tschannen
dfc152ebb3
shift the bits farther
2020-05-20 11:34:24 -07:00
Evan Tschannen
c09a28b0db
speed up comparison of endpoints
2020-05-19 20:41:56 -07:00
Evan Tschannen
bf9f24beb5
fixed mismatch of Endpoint UIDs
2020-05-19 17:16:41 -07:00
Evan Tschannen
9313e490aa
change the first part of the UID to make comparisons cheaper
2020-05-19 16:48:20 -07:00
Vishesh Yadav
afe6bf19e2
Fix typos and whitespace
2020-05-11 12:53:19 -07:00
Vishesh Yadav
9dc65547ad
Avoid setting failure status of local addresses in main thread
2020-05-11 11:24:19 -07:00
Evan Tschannen
f0f52fb2be
Merge branch 'master' into feature-small-endpoint
...
# Conflicts:
# fdbclient/StorageServerInterface.h
2020-05-08 16:37:35 -07:00
Evan Tschannen
51d3aaf4ae
fixed a few rare correctness bugs
2020-05-06 23:24:58 -07:00
tclinken
bc19f70455
Move delayedHealthUpdateF declaration
2020-05-01 18:14:51 -07:00
Evan Tschannen
c126422296
fix: firstFree was not reset after using all available space
2020-05-01 17:46:20 -07:00
Evan Tschannen
fd0ee72293
Merge branch 'master' into feature-small-endpoint
2020-04-29 18:43:10 -07:00
Evan Tschannen
76fb345dd1
Merge branch 'master' into feature-tree-broadcast
...
# Conflicts:
# fdbrpc/FailureMonitor.actor.cpp
2020-04-29 09:51:22 -07:00
Evan Tschannen
2b2e0b9f75
Merge pull request #2932 from vishesh/task/issue-1017-slow-machine-poisoning
...
FailureMonitoring: Mark unstable connections as failed [1/X]
2020-04-28 13:57:49 -07:00
Evan Tschannen
b7f5f3be48
merge in master
2020-04-28 13:11:47 -07:00
Evan Tschannen
c87aa33941
Merge branch 'release-6.2'
...
# Conflicts:
# CMakeLists.txt
# bindings/go/src/fdb/generated.go
# documentation/sphinx/source/api-common.rst.inc
# documentation/sphinx/source/api-ruby.rst
# documentation/sphinx/source/release-notes.rst
# fdbclient/FailureMonitorClient.actor.cpp
# fdbclient/NativeAPI.actor.cpp
# fdbclient/vexillographer/fdb.options
# fdbrpc/FlowTransport.actor.cpp
# fdbserver/OldTLogServer_6_0.actor.cpp
# fdbserver/TLogServer.actor.cpp
# fdbserver/fdbserver.actor.cpp
# versions.target
2020-04-23 13:47:53 -07:00
Vishesh Yadav
c30010f5b8
FlowTransport: Increase delay for connecting to failed connections
2020-04-23 09:44:30 -07:00
Evan Tschannen
a835123680
exit fdbserver after a ReceiverError, because a packet which should be delivered will never be received
2020-04-22 23:38:46 -07:00
Evan Tschannen
810bba2067
cleanup calls to FlowTransport::isClient()
2020-04-22 23:36:40 -07:00
Vishesh Yadav
3a5315d10c
FlowTransport: Don't immediately mark connections failed
...
In connectionKeeper(), when a connection is failed for
FAILURE_DETECTION_DELAY, then only mark connection as failed.
This is much closer to the original centralized behaviour, and also
adds more confidence on whether the connection is actually failed.
2020-04-22 19:46:04 -07:00
Vishesh Yadav
500a265d20
FlowTransport: Refactor and clear FailureStatus on destroy
2020-04-21 14:11:19 -07:00
Vishesh Yadav
992002cf34
FlowTransport: don't start connectionKeeper for local peer
...
getOrOpenPeer() is used for local addresses sometimes, which ends up
starting connectionKeeper() which is unnecessary.
2020-04-16 14:04:32 -07:00
Vishesh Yadav
da7d0093ee
Cleanup unused code
2020-04-15 19:48:25 -07:00
Vishesh Yadav
023372a226
FailMon: Mark peer failed after retrying
2020-04-15 19:47:24 -07:00
Vishesh Yadav
f959af8228
Refactor per review comments
2020-04-14 11:30:40 -07:00
Evan Tschannen
dbf6afc78e
more space efficient endpoint map
2020-04-12 23:51:20 -07:00
Evan Tschannen
ff5543b579
working implementation
2020-04-12 22:18:51 -07:00
Evan Tschannen
0c2e8b9462
only serialize a single endpoint for an interface
2020-04-12 16:04:48 -07:00
Evan Tschannen
07cc0a8d74
code cleanup
2020-04-10 17:02:11 -07:00
Vishesh Yadav
fed5c543d4
Remove leftover TODO code around centralized healthmonitor
2020-04-08 22:56:07 -07:00
Vishesh Yadav
36d89db4e7
FlowTransport: Don't always close unused open connection
2020-04-06 23:05:29 -07:00
Vishesh Yadav
4214c45218
FlowTransport: Temporarily keep idle connections open for server processes
2020-04-06 21:27:54 -07:00
Evan Tschannen
2a1bd97120
fix compilation errors
2020-04-06 20:58:43 -07:00
Evan Tschannen
477d66b46d
implemented a tree broadcast for txn state message for proxies, and serverDBInfo for workers
2020-04-05 23:09:36 -07:00
Vishesh Yadav
fdc1048f75
Add knob to turn off marking unstable connections
2020-04-03 15:53:00 -07:00
Vishesh Yadav
613b8bb169
More TraceEvents and remove 'delayed' used for debugging
2020-04-03 15:53:00 -07:00
Vishesh Yadav
1d35f2ff5a
Mark a connection as failed for X seconds if closes too often
2020-04-03 15:53:00 -07:00
Vishesh Yadav
d90e168e24
Add HealthMonitoring skeleton code
2020-04-03 15:53:00 -07:00
Evan Tschannen
303df197cf
Merge branch 'release-6.2'
...
# Conflicts:
# CMakeLists.txt
# bindings/c/test/mako/mako.c
# documentation/sphinx/source/release-notes.rst
# fdbbackup/backup.actor.cpp
# fdbclient/NativeAPI.actor.cpp
# fdbclient/NativeAPI.actor.h
# fdbserver/DataDistributionQueue.actor.cpp
# fdbserver/Knobs.cpp
# fdbserver/Knobs.h
# fdbserver/LogRouter.actor.cpp
# fdbserver/SkipList.cpp
# fdbserver/fdbserver.actor.cpp
# flow/CMakeLists.txt
# flow/Knobs.cpp
# flow/Knobs.h
# flow/flow.vcxproj
# flow/flow.vcxproj.filters
# versions.target
2020-03-06 18:22:46 -08:00
Evan Tschannen
976c2fc7a8
Update fdbrpc/FlowTransport.actor.cpp
...
Co-Authored-By: Alex Miller <35046903+alexmiller-apple@users.noreply.github.com>
2020-03-04 16:13:59 -08:00
Evan Tschannen
820957025f
accept connections in batches of 20 to improve performance
2020-03-04 14:24:57 -08:00
Evan Tschannen
924d335aa7
Merge branch 'release-6.2'
...
# Conflicts:
# documentation/sphinx/source/release-notes.rst
# flow/Knobs.cpp
# flow/Knobs.h
2020-02-25 18:25:19 -08:00
Evan Tschannen
65fbe0d0bc
revert AcceptSocket priority change because of bad performance results
2020-02-21 19:22:14 -08:00
Evan Tschannen
96258b9809
Merge branch 'release-6.2'
...
# Conflicts:
# documentation/sphinx/source/release-notes.rst
# fdbcli/fdbcli.actor.cpp
# fdbclient/ManagementAPI.actor.cpp
# fdbrpc/FlowTransport.actor.cpp
# fdbserver/ClusterController.actor.cpp
# fdbserver/DataDistribution.actor.cpp
# fdbserver/DataDistribution.actor.h
# fdbserver/DataDistributionQueue.actor.cpp
# fdbserver/KeyValueStoreMemory.actor.cpp
# fdbserver/MasterProxyServer.actor.cpp
# fdbserver/QuietDatabase.actor.cpp
# fdbserver/SkipList.cpp
# fdbserver/StorageMetrics.actor.h
# fdbserver/TLogServer.actor.cpp
# fdbserver/fdbserver.actor.cpp
# fdbserver/storageserver.actor.cpp
# fdbserver/workloads/KVStoreTest.actor.cpp
# flow/CMakeLists.txt
# flow/Knobs.cpp
# flow/Knobs.h
# flow/genericactors.actor.cpp
# flow/serialize.h
2020-02-21 19:09:16 -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
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
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