Commit Graph

64 Commits

Author SHA1 Message Date
FDB Formatster df90cc89de apply clang-format to *.c, *.cpp, *.h, *.hpp files 2021-03-10 10:18:07 -08:00
Andrew Noyes 3560003c50 Fix missing override in fdbrpc/FlowTests.actor.cpp 2021-01-26 17:29:54 +00:00
Richard Chen c77d9e4abe merge conflicts 2020-12-02 21:53:19 +00:00
David Youngworth d64cf8b9e3 Merge branch 6.3 into master 2020-11-17 11:22:45 -08:00
sfc-gh-tclinkenbeard 4669f837fa Add uses of makeReference 2020-11-07 22:10:18 -08:00
Andrew Noyes 1c05b70942 Add INetwork::timer_monotonic 2020-11-05 17:07:49 +00:00
Richard Chen 545ee4269d master conflicts 2020-10-19 01:03:54 +00:00
Richard Chen 2f5b0bef08 switch to test newer incompatible version. Fix PR comments. Modify schema 2020-10-12 18:29:16 +00:00
Richard Chen bbf5bdf6da fix stable interfaces test and corresponding changes in simulator 2020-10-12 18:25:12 +00:00
Richard Chen 41843f07e6 add simulator support for different process versions and ProtocolVersion test 2020-10-12 18:19:31 +00:00
sfc-gh-tclinkenbeard ccf2ca73f3 Fix Windows CMake build 2020-10-08 23:58:58 -07:00
sfc-gh-tclinkenbeard 71d0ef676c Use override where applicable in fdbrpc 2020-10-07 19:55:05 -07:00
sfc-gh-tclinkenbeard d7cb54d2b2 Fixed Windows CMake build 2020-06-20 23:03:18 -07:00
sfc-gh-tclinkenbeard a59925dd73 Added more const-correctness improvements 2020-06-20 22:15:19 -07:00
A.J. Beamon 86f712657e Eliminate the undefined behavior of calling run_network twice, instead returning an error. 2020-05-22 13:31:06 -07:00
Evan Tschannen 574914640a
Merge pull request #2999 from tclinken/more-move-optimizations
Generate rvalue reference overloads for actor callback functions
2020-05-07 14:32:27 -07:00
tclinken dd90eff171 Added additional assertion to /flow/flow/PromiseStream/move2 2020-04-30 07:55:13 -07:00
tclinken c4dda9195c Fixed Windows CMake build 2020-04-29 13:22:01 -07:00
tclinken c205bc902f Added SingleCallback<T>::fire(T&&) 2020-04-29 12:28:17 -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
tclinken 2628afe463 Improved PromiseStream move unit tests 2020-04-21 15:18:59 -07:00
tclinken 885a2e020e Generate rvalue reference overloads with actor compiler 2020-04-21 15:18:59 -07:00
Alex Miller 2ce539ef6d Respect flow<->fdbrpc module boundaries.
Which fixes a compilation error due to a circular dependency between
flow.a and fdbrpc.a.  However, this is now done at the cost of newNet2
users have to remember to add Net2FileSystem::stop() as a callback.
2020-04-20 02:53:07 -07:00
tclinken 3a01d24970 Pass const ref to a_callback_fire 2020-04-08 14:50:41 -07:00
tclinken 488c20e58e Fixed failing "/flow/flow/promisestream callbacks" unit test 2020-04-08 11:24:56 -07:00
tclinken ff3e3fcc13 Added /flow/PromiseStream/move unit test 2020-04-08 00:45:56 -07:00
Evan Tschannen e08f0201f1 merge release 6.2 into master 2020-03-17 12:51:47 -07:00
Alex Miller 0c558efcfe Add a `tlsinfo` command to fdbcli that prints the certificate chain.
This requires the certificate chain to load successfully, otherwise
fdbcli will error out at an earlier point due to Net2 not being able to
configure TLS.
2020-03-13 00:11:53 -07: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
Andrew Noyes fcefb4bf6d
Merge branch 'master' into issue-1226 2020-02-04 17:46:36 -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
Alvin Moore 3bf971ba8b Merge branch 'release-6.2' of github.com:apple/foundationdb into release_6.2_merge
# Conflicts:
#	documentation/sphinx/source/release-notes.rst
#	fdbserver/storageserver.actor.cpp
2019-12-12 07:13:12 -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 69fe02933d Replace /flow/delayOrdering with /flow/buggifiedDelay
Seems that we don't want the property that delays become ready in order
to hold, so make sure it doesn't hold in the simulator.
2019-10-09 12:59:01 -07:00
Andrew Noyes a2243b6501 Add test for delay ordering
See #2148
2019-09-26 12:40:19 -07:00
Andrew Noyes ab650c6fe6 Make test resilient to changes elsewhere in file 2019-09-12 09:21:17 -07:00
Andrew Noyes 8353dd4731 Test line pragmas in generated actor files 2019-09-11 17:12:55 -07:00
Andrew Noyes 9d531db985 Handle nested classes 2019-09-10 13:25:58 -07:00
Andrew Noyes c487f021f0 WIP - seems to work for 1 level of nesting 2019-09-10 13:09:37 -07:00
Andrew Noyes eeb2da5c9d WIP - simple example compiles 2019-09-09 22:56:19 -07:00
Evan Tschannen 24aad14f06 Merge branch 'release-6.2'
# Conflicts:
#	CMakeLists.txt
#	documentation/sphinx/source/release-notes.rst
#	versions.target
2019-08-30 17:23:58 -07:00
Andrew Noyes 6aa0ada7b1 Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
Andrew Noyes 638c9379c6 Add [[flow_allow_discard]] to dsltest + FlowTests 2019-08-16 09:24:57 -07:00
mpilman 370ba8b841 Remove --object-serializer flag from executables 2019-08-06 09:25:40 -07:00
Alex Miller bf883d7055 Merge remote-tracking branch 'upstream/master' into flowlock-api 2019-06-25 14:26:50 -07:00
Alex Miller 7a500cd37f A giant translation of TaskFooPriority -> TaskPriority::Foo
This is so that APIs that take priorities don't take ints, which are
common and easy to accidentally pass the wrong thing.
2019-06-25 02:47:35 -07:00
mpilman 2eff2b7e21 First simple test is working (but very buggy) 2019-06-19 13:03:41 -07:00
A.J. Beamon 603721e125 Merge branch 'master' into thread-safe-random-number-generation
# Conflicts:
#	fdbclient/ManagementAPI.actor.cpp
#	fdbrpc/AsyncFileCached.actor.h
#	fdbrpc/genericactors.actor.cpp
#	fdbrpc/sim2.actor.cpp
#	fdbserver/DiskQueue.actor.cpp
#	fdbserver/workloads/BulkSetup.actor.h
#	flow/ActorCollection.actor.cpp
#	flow/Net2.actor.cpp
#	flow/Trace.cpp
#	flow/flow.cpp
2019-05-23 08:35:47 -07:00
mpilman 9eeb48c43d Allow to turn on object serializer
This commit includes functionality to turn on
the object serializer for network communication.
This is done the following way:

- On incoming connections, a process will detect
  whether the client supports the object serializer
  and will only serialize responses with it, if it does
- On outgoing connections, the command line flag is used
  to determine whether the object serializer should be used
  to send data.

This way, a cluster can run in mixed mode. To upgrade one
can upgrade one process at a time and set the flag one process
at a time.

This is how this is tested on the simulator:
- The command line flag can take three options: on, off,
  and random.
- For off, the object serializer will never we used.
- For on, the object serializer will be always used.
- For random, the simulator will flip a coin for each
  process it starts up.
2019-05-13 14:15:22 -07:00