Commit Graph

365 Commits

Author SHA1 Message Date
Xiaoge Su abf73047ca Enforce std:: specifier rather than using namespace 2021-09-16 19:40:28 -07:00
Dan Lambright 8689e1f106 merge with master 2021-08-30 15:29:08 -04:00
FDB Formatster 2c788c233d apply clang-format to *.c, *.cpp, *.h, *.hpp files 2021-08-27 17:07:47 -07:00
sfc-gh-tclinkenbeard ceb83f7f5e Make ccInterface a const reference in workerServer 2021-08-14 23:41:39 -07:00
Sreenath Bodagala cec744cebf - Address the following issues:
- Sequencer should update the version vector once for a given commit
version (irrespective of the number of times that it receives and
processes the ReportRawCommittedVersionRequest message for that commit
version). Issue found by simulation tests.

- Storage server should take both its latest commit version and the
read version into account while processing a read request. This is to
address transaction_too_old error that we saw while running tests with
mako (and also in YCSB tests).

- Do not enable the tlog blocking-peek logic if ENABLE_VERSION_VECTOR
flag is set to false.
2021-08-10 19:47:18 +00:00
Sreenath Bodagala a081c0baa5 Merge remote-tracking branch 'apple-upstream/master' into version-vector-prototype 2021-08-05 22:40:32 +00:00
sfc-gh-tclinkenbeard c74047c665 Merge remote-tracking branch 'origin/master' into fix-more-clang-warnings 2021-07-28 11:51:02 -07:00
Steve Atherton 507c1f11e3 Add .log() to bare TraceEvent() invocations without any .detail()s to avoid clang-tidy warning about immediate destruction of object without use. 2021-07-26 19:55:10 -07:00
sfc-gh-tclinkenbeard 3442ebd3b7 Fix more -Wreorder-ctor warnings across many files 2021-07-24 11:20:51 -07:00
sfc-gh-tclinkenbeard b9a22a61ef Fix many -Wreorder-ctor warnings 2021-07-23 17:33:18 -07:00
Dan Lambright 1bb01ef591 use version vector in GetRange 2021-07-22 10:49:08 -04:00
sfc-gh-tclinkenbeard 6f81155784 Merge remote-tracking branch 'origin/master' into const-serverdbinfo 2021-07-20 10:18:40 -07:00
Dan Lambright 3dc0c44187
Merge branch 'version-vector-prototype' into vv-79736536 2021-07-19 15:50:16 -04:00
Steve Atherton f596a81073 Rename ::TRUE and ::FALSE in BooleanParams to ::True and ::False so as to not conflict with the TRUE and FALSE macros provided by the Windows and MacOS SDKs. 2021-07-17 00:11:40 -07:00
Dan Lambright 65b743b5ef respond to comments 8/15 2021-07-16 09:14:34 -04:00
Sreenath Bodagala 2f1b09c52c - Address a merge conflict 2021-07-15 20:01:58 +00:00
Sreenath Bodagala 81001edb2e - Propagate version vector deltas between processes 2021-07-15 19:49:20 +00:00
Sreenath Bodagala 0dbd917012 - Address review comments 2021-07-15 19:49:20 +00:00
Dan Lambright 1f45a813e2 updated from 7/14 2021-07-15 10:23:07 -04:00
Dan Lambright d07c8ce211 wait for prev per tlog 2021-07-15 08:44:48 -04:00
Dan Lambright 7c285aa4cf wait for prev 2021-07-13 21:07:17 -04:00
Dan Lambright de9a6ea060 Respond to review comments 7/12 2021-07-12 14:37:28 -04:00
Dan Lambright d8122ebc09 Respond to review comments 7/8 2021-07-12 12:13:25 -04:00
Dan Lambright 17be3dc201 fix bug related to misunderstanding of tag replicas. 2021-07-12 11:46:52 -04:00
Dan Lambright a107dd655e tpcv messaging 2021-07-12 11:46:52 -04:00
sfc-gh-tclinkenbeard 6c1d913ab8 Prevent masterServer from modifying db 2021-07-11 21:11:21 -07:00
Sreenath Bodagala baceacacf4 - Maintain a cache of the version vector on both the Grv proxy and
the client. Update these caches on the (transaction) read path.
2021-07-07 19:35:26 +00:00
sfc-gh-tclinkenbeard 79ff07a071 Added *BOOLEAN_PARAM macros to enforce documentation of boolean parameters 2021-07-02 15:04:42 -07:00
Sreenath Bodagala c87c7d9647 - A simple comment-related change 2021-07-01 15:36:00 +00:00
Sreenath Bodagala 07ce15dadb - Address review comments 2021-06-29 18:58:59 +00:00
Sreenath Bodagala fc0373c2d6 Introduce Version Vector. 2021-06-28 19:50:09 +00:00
Neethu Haneesha Bingi 73752f441b exclude locality:clang-format, ranged loops, documentation, tracking addStoragesever for exclusion. 2021-06-23 18:03:27 -07:00
Zhe Wang ab1404b201
Merge pull request #5015 from kakaiu/zhewang-add-traceevent-in-recovery
Add trace event to recovery_transaction step in recovery
2021-06-21 13:00:46 -05:00
Zhe Wang b685691629 add trace event to recovery_transaction step in recovery 2021-06-19 16:04:20 -05:00
sfc-gh-tclinkenbeard dee9fec300 Rename coordination files to fix upgrades 2021-06-18 14:16:49 -07:00
RenxuanW 4f6b983bfb Address comments. 2021-05-27 12:58:47 -07:00
RenxuanW caeceb932e Improve logging on the current view of the database configuration that the cluster controller is using. 2021-05-24 09:37:57 -07:00
Lukas Joswiak e7d7b39f12
Merge pull request #4744 from sfc-gh-tclinkenbeard/add-rangeresult-type-alias
Create RangeResult type alias
2021-05-03 16:29:33 -07:00
sfc-gh-tclinkenbeard 0a9289a580 Merge remote-tracking branch 'origin/master' into add-master-logging 2021-05-03 14:49:08 -07:00
sfc-gh-tclinkenbeard 5c2d7b6080 Create RangeResult type alias 2021-05-03 13:14:16 -07:00
Evan Tschannen 65fcf4014e Fix: simulation could still stall writes for 10 seconds even when speedUpSimulation was on
Fix: disable connection failures in simulation when there are too many generations outstanding
2021-04-28 12:41:48 -07:00
A.J. Beamon feede1d2f6 Fix line length of test macro + comments to be within the 120 character limit 2021-04-13 10:48:52 -07:00
sfc-gh-tclinkenbeard 18120d6b1a Add MasterMetrics periodic logging 2021-04-06 22:14:02 -07:00
Evan Tschannen 0ea513b503 It is not safe to call expectedLogSets() with a potentially newer configuration than the one from the recovery 2021-03-23 13:21:48 -07:00
Jingyu Zhou b0fa735a27 Fix a race between configuration change and recovery
The problem is described in Issue #4376, where a configuration change can
occure before the database is fully recovered, thus triggering the assertion
failure.

Because of the configuration change, the master needs to do the recovery. So
the fix is to trigger the recovery when this happens.
2021-03-20 17:35:49 -07:00
Vishesh Yadav d7252da951 clang-format: Fix the TEST() macros which require comments in line 2021-03-10 16:50:53 -08:00
FDB Formatster df90cc89de apply clang-format to *.c, *.cpp, *.h, *.hpp files 2021-03-10 10:18:07 -08:00
Andrew Noyes 79cec09255 Apply clang-tidy's performance-inefficient-vector-operation fix
I ran this command in my build directory after compiling with
OPEN_FOR_IDE. It took a few small tweaks to get it to compile, which is
outside the scope of this commit.

    $ python run-clang-tidy.py -j $(nproc) -checks='-*,performance-inefficient-vector-operation' -fix
2021-03-04 03:58:25 +00:00
Evan Tschannen 346a4e3ecd Merge branch 'release-6.3'
# Conflicts:
#	fdbcli/fdbcli.actor.cpp
#	fdbrpc/LoadBalance.actor.h
#	fdbrpc/MultiInterface.h
#	fdbserver/ClusterController.actor.cpp
#	fdbserver/MasterProxyServer.actor.cpp
#	fdbserver/masterserver.actor.cpp
2021-03-01 18:52:06 -08:00
Meng Xu 471a3489fb Resolve review comments and add trace fields to MasterRecoveryState 2021-02-17 14:44:14 -08:00
sfc-gh-tclinkenbeard 4669f837fa Add uses of makeReference 2020-11-07 22:10:18 -08:00
Jon Fu 51db9a7e0a add static method to access backup pause key instead of constructing it manually 2020-11-06 14:03:29 -05:00
Jon Fu b90ad11483 add some more trace and comments 2020-11-05 14:23:08 -05:00
Jon Fu bda72d9a3d first draft at changing snapshot backup behaviour 2020-11-02 17:12:30 -05:00
Xin Dong 944f30484a
Merge pull request #3759 from dongxinEric/misc/3739/expose-time-since-last-recovery
This resolves issue #3739 by exposing time since last full recovery.
2020-10-19 09:03:31 -07:00
Trevor Clinkenbeard 24ea35e56f
Merge pull request #3748 from sfc-gh-ljoswiak/visibility-2
Add TLogVersion::V6
2020-10-14 17:35:32 -07:00
Jon Fu e696c4a8eb remove redundant line 2020-10-07 15:23:17 -04:00
Lukas Joswiak dea7000970 Merge remote-tracking branch 'upstream/master' into visibility-1 2020-10-06 18:38:15 -07:00
Jon Fu 44cd3b0999 add stopBackup to incrementalBackup workload 2020-09-30 14:24:52 -04:00
Jon Fu 3ceb44f4df add TEST macros in code paths 2020-09-28 16:40:38 -04:00
Xin Dong a96d6f85c5 Removed redundant field number_of_old_generations_of_tlogs from status json 2020-09-24 09:44:51 -07:00
Jon Fu 69580593dd Merge branch 'master' of https://github.com/apple/foundationdb into jfu-snapshot-record-version 2020-09-23 15:35:05 -04:00
Xin Dong 50f681cd32
Apply suggestions from code review
Co-authored-by: A.J. Beamon <ajbeamon@users.noreply.github.com>
2020-09-23 10:54:49 -07:00
Xin Dong 4df0f60729 Instead of using fully_recovered, use accepting_commits as a singal of DB turned available. Also add the number of old generations into status 2020-09-17 09:55:25 -07:00
Young Liu cc5bc16bd8 Rename more places from proxy to commit proxy 2020-09-15 22:29:49 -07:00
Xin Dong 3c7bd3549a Fix compile errors 2020-09-11 14:23:27 -07:00
Xin Dong 2619e4d3df Use version clock to mitigate network clock skew. 2020-09-11 13:39:16 -07:00
Jon Fu 260c8d9568 Merge branch 'master' of https://github.com/apple/foundationdb into jfu-snapshot-record-version 2020-09-11 15:05:58 -04:00
Jon Fu 22996284c7 added changes to allow writing of last epoch end version to special keys when performing recovery due to snapshot 2020-09-11 15:00:11 -04:00
Xin Dong 224f23b0f8 Rely on MasterRecoveryState message since we only care about the current generation. 2020-09-11 11:45:02 -07:00
Young Liu 35bef73a1c Rename proxy to commit proxy 2020-09-10 17:44:15 -07:00
Xin Dong 4363dd0f25 This resolves issue #3739 by exposing time since last full recovery. 2020-09-08 14:26:01 -07:00
Lukas Joswiak 2a58e775d2 Add original changes 2020-09-04 15:36:47 -07:00
Young Liu 16ef2bd3bd Pending commit 2020-08-12 10:34:07 -07:00
Young Liu 79ce16650d merge master branch 2020-08-11 19:22:10 -07:00
Xiaoge Su d8bb36c4c8 Refactor applyMetadataMutations to accept less args 2020-08-06 11:40:40 -07:00
Young Liu d6a23a4d6b Resolve comments to make GRV proxy a separate process class 2020-08-06 00:01:57 -07:00
Young Liu bfa4eb9ab2 Resolve comments 2020-07-30 14:45:03 -07:00
Young Liu 30ea639666 Remove debug traces 2020-07-29 07:55:05 -07:00
Young Liu f7b76a92af pass joshua 2020-07-29 07:26:55 -07:00
Evan Tschannen a49cb41de7 Merge branch 'release-6.3'
# Conflicts:
#	CMakeLists.txt
#	cmake/ConfigureCompiler.cmake
#	fdbserver/Knobs.cpp
#	fdbserver/StorageCache.actor.cpp
#	fdbserver/storageserver.actor.cpp
#	flow/ThreadHelper.actor.h
#	flow/serialize.h
#	tests/CMakeLists.txt
2020-07-29 00:31:55 -07:00
Young Liu 229ab0d5f1 Fix some conflicts and remote debugging trace events 2020-07-22 23:35:46 -07:00
Young Liu 525f10e30c Merge master branch 2020-07-22 16:08:49 -07:00
Young Liu 302cf5c45f Remove debug trace events 2020-07-22 12:20:22 -07:00
Evan Tschannen 220ede3564 fixed compile error 2020-07-20 11:35:20 -07:00
Evan Tschannen be67e9cfc7 wait for the correct cluster controller interface before starting master recovery 2020-07-20 11:29:37 -07:00
Evan Tschannen 32c0169fc8 use the old logic for lifetime since we already have verified the cluster controller is correct 2020-07-20 10:26:47 -07:00
Young Liu 2703cedac5 Fixed known bugs 2020-07-17 22:24:52 -07:00
Evan Tschannen 6a38f81269 do not kill the master unless we have a dbInfo from the current cluster controller 2020-07-17 14:59:38 -07:00
Young Liu 21c1998cca Fix MaxTLogQueueSize Bug 2020-07-16 15:56:04 -07:00
Young Liu 5b06d69d25 Pass watches test 2020-07-15 00:37:41 -07:00
Meng Xu ef8c1060a2 Merge branch 'master' into mengxu/tmp-merge-6.3 2020-07-13 10:15:56 -07:00
Jingyu Zhou 5cc5d9cf1e Log peer address whose failure can cause master recovery
So when there is master recovery due to failed tlog, proxy, resolver, log
router, or resolver, we can have a trace event tells which address that the
master thinks is dead.
2020-07-10 15:57:03 -07:00
Markus Pilman 0fbe7101c3 Revert "Revert "Request tracing""
This reverts commit 327cc31e35.
2020-07-07 10:06:13 -06:00
Meng Xu f3302833ce
Merge pull request #3435 from apple/release-6.3
Merge Release 6.3 to master
2020-06-30 10:08:28 -07:00
Jingyu Zhou d883426c6a Fix spammy GotBackupProgress events
Only print this types of events during master recovery and don't log them for
backup workers.
2020-06-27 21:30:38 -07:00
Young Liu 8cd97a2be8 Resolve Evan's comments:
- Only report commit version when commit version is larger than the known committed version.
- Fix task priorities of [Get/Report]LiveCommittedVersion [request/reply].
- Fix some code style issues.
2020-06-17 10:02:25 -07:00
Young Liu 4dfb903a3a tmp merge 2020-06-16 20:32:07 -07:00
Jingyu Zhou 327cc31e35
Revert "Request tracing" 2020-06-16 12:32:42 -07:00
Young Liu bf524fc6f2 Added span trace in serveLiveCommittedVersion 2020-06-13 17:47:13 -07:00