Commit Graph

663 Commits

Author SHA1 Message Date
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
A.J. Beamon ef801a6432 Rename LargePacket warnings to distinguish between sent and received packets. Also remove Net2_ prefix from packet size trace events. 2019-11-12 09:23:46 -08:00
mpilman 92ce9ef5dc updated comment 2019-10-24 11:45:32 -07:00
mpilman 325a8e4213 remove confusing USE_ODIRECT knob 2019-10-24 11:44:03 -07:00
mpilman f23392ec5a Don't use O_DIRECT in EIO by default 2019-10-24 11:39:55 -07:00
mpilman 7ad0e20e48 Added knob to disable O_DIRECT 2019-10-24 11:20:14 -07:00
mpilman f41f19b5f6 Introduced knob to set eio parallelism 2019-10-24 11:20:14 -07:00
mpilman 85977fb8d5 Use O_DIRECT with EIO 2019-10-24 11:20:14 -07:00
A.J. Beamon 562ce17eca Initialize outgoingConnectionIdle in the constructor. Add back line to connectionKeeper that is needed in some looping cases 2019-10-10 12:48:35 -07:00
A.J. Beamon ad8604f24a Fix spurious ConnectionClosed event when starting a connection. 2019-10-10 10:34:44 -07:00
Evan Tschannen a7237c4302
Merge pull request #2045 from atn34/disallow-scalar-network-messages
Disallow scalar network messages
2019-08-30 13:38:54 -07:00
Vishesh Yadav cf56b005e8 Add comment for pinging incompatible clients
If client is incompatible, connectionMonitor relies on peer->resetPing
to be triggered whenever data is received to prevent ping timeout.
The server stopped sending pings since 6.2 which meant resetPing
doesn't get triggered.
2019-08-30 11:17:22 -07:00
A.J. Beamon 1fdabe62c2
Merge pull request #2048 from etschannen/feature-fix-connections
Fixed two different ways useful connections were being closed
2019-08-30 11:05:02 -07:00
Evan Tschannen 8fc28dd730 fix: continue pinging incompatible clients from the servers so that the the client knows the server process is active 2019-08-29 16:51:03 -07:00
Evan Tschannen 1c0484cffc fix: do not close connections which have outstanding tryGetReplies with the peer 2019-08-29 16:49:57 -07:00
Andrew Noyes 6aa0ada7b1 Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
Evan Tschannen 41b908752e increased move keys parallelism to be less of a decrease just in case lowering this could effect normal data distribution
raised target durability lag versions to give more time for batch limiting to come into play before this limit is hit
changed max_bad_options to better reflect the name
2019-08-21 14:55:21 -07:00
Evan Tschannen 51cedd24c8 load balance will send reads to remote servers if more than one alternative is failed or overloaded 2019-08-19 13:59:49 -07:00
Evan Tschannen da8163fd5a allow one requests every second to skip there all_alteratives_failed delay, because if a client has a timeout longer than the delay we will never invalidate the key servers cache 2019-08-09 13:03:40 -07:00
Evan Tschannen 5f7d3498ea The delay for all_alteratives_failed can scale all the way up to 30.0 at a much slow time ratio 2019-08-09 12:35:19 -07:00
Evan Tschannen 0eb0e7a44a made Peer reference counted to avoid other potential bugs involving accessing Peer after it has been destroyed 2019-08-09 11:52:12 -07:00
Evan Tschannen 84fd1003a5 do not close idle network connections with incompatible servers 2019-08-08 23:47:00 -07:00
Evan Tschannen 98b643b7ae fix: connectionReader could access self in its destructor after it has already the object has already been deleted if an error can be thrown from connectionMonitor while still on the stack from scanPackets 2019-08-08 23:35:44 -07:00
mpilman 370ba8b841 Remove --object-serializer flag from executables 2019-08-06 09:25:40 -07:00
A.J. Beamon 863204a29d Update names in CMakeLists, vcxproj 2019-08-01 08:48:25 -07:00
A.J. Beamon e0736232d4 Rename file in comment header 2019-08-01 08:40:45 -07:00
A.J. Beamon e61cac4ed4 Fix spacing issue; rename fdbrpc/Stats.h to fdbrpc/TimedRequest.h 2019-08-01 08:39:52 -07:00
Markus Pilman 0e474ed47e
Update fdbrpc/Stats.h
Co-Authored-By: Evan Tschannen <36455792+etschannen@users.noreply.github.com>
2019-07-31 19:56:21 -07:00
mpilman 7d247af500 Two minor bug fixes from recent optimizations 2019-07-31 19:14:11 -07:00
Andrew Noyes 0569df00f6 Remove indirection in LoadBalancedReply serialization 2019-07-31 17:59:35 -07:00
Jingyu Zhou daf1e09af4 Explicitly check for clang and g++ 2019-07-30 20:08:56 -07:00
Jingyu Zhou 638d2d05f4 Adds attribute to non-windows compilers 2019-07-30 15:49:25 -07:00
Jingyu Zhou 83922f1f37 Fix clang compiling error without sse4.2 2019-07-30 15:02:24 -07:00
Evan Tschannen 90e3b50213 Merge branch 'master' into feature-coordinator-connection
# Conflicts:
#	fdbclient/DatabaseContext.h
#	fdbclient/NativeAPI.actor.cpp
#	fdbclient/NativeAPI.actor.h
#	fdbserver/workloads/KillRegion.actor.cpp
2019-07-26 15:05:02 -07:00
Evan Tschannen 4a866290b7 Clients keep a persistent connection open with coordinators to get updates to the list of proxies
Status still needs to be updated with client information with information from the coordinators
2019-07-23 19:22:44 -07:00
Evan Tschannen c70e762f0e
Merge pull request #1785 from xumengpanda/mengxu/server-team-remover-PR
Remove redundant server teams
2019-07-19 17:44:16 -07:00
mpilman 1ac2d01b03 Merge remote-tracking branch 'upstream/master' into flatbuffers-fixes2 2019-07-18 09:50:08 -07:00