47 Commits

Author SHA1 Message Date
Josh Slocum
d68cb9b048 Changing role names and enabling tss by default in consistency check 2021-05-25 22:21:43 +00:00
Josh Slocum
ce82c9653e Testing Storage Server implementation 2021-05-25 20:28:50 +00:00
A.J. Beamon
16dfb2b2f2 Keep connections older than 6.2 open indefinitely to avoid weird bugs around quickly closing the database. 2021-04-27 15:00:56 -07:00
A.J. Beamon
a794fca932 Support 5.0 (and earlier) client versions by adding GRV probing for old versions. Update the C bindings implementation of get_server_protocol to convert the ProtocolVersion object into a uint64_t. Rename a misleading protocol version alias. 2021-04-23 15:00:21 -07:00
A.J. Beamon
b2d6930103 The multi-version client monitors the cluster's protocol version and only activates the client library that can connect. 2021-04-15 11:45:14 -07:00
Johannes M. Scheuermann
4aa98f5035 Fix typo 2021-03-14 19:30:35 +00:00
Richard Chen
1c533e7363 fix flowtransport conflicts 2020-10-19 01:00:03 +00:00
Lukas Joswiak
e47e0108a7 Add new TLogVersion 2020-10-14 15:41:10 -07:00
Richard Chen
4eb20a1283 merge anoyes/stable-interface and add back in isCompatible 2020-10-12 20:39:37 +00:00
XiaoxiWang
0d65e1e0e0 update ProtocolVersion 2020-08-23 21:03:26 +00:00
sfc-gh-tclinkenbeard
e1ee953a8a Updated minInvalidProtocolVersion to 7.2.0 2020-07-31 20:15:27 -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
sfc-gh-tclinkenbeard
e69f299a5c Added minInvalidProtocolVersion 2020-07-09 14:39:35 -07:00
Meng Xu
5da8f1b9aa Protocol dev version revision by A.J. 2020-06-12 14:48:11 -07:00
Meng Xu
9ed6780f35 Explain the dev version in protocol version 2020-06-12 14:19:30 -07:00
sfc-gh-ngoyal
693d9e8b89
Merge branch 'master' into fdb_cache_wo_allocator 2020-06-09 15:09:58 -07:00
negoyal
cf13e00a8f Merge remote-tracking branch 'origin/release-6.3' into fdb_cache_wo_allocator 2020-06-01 17:38:31 -07:00
Meng Xu
1c35ad884f Merge branch 'master' into mengxu/release-6.3-conflict-PR
Has conflict with master;
Next commit will fix the conflicts.
2020-05-25 12:01:49 -07:00
Evan Tschannen
4b6e1d8a57 fix compile problem 2020-05-22 17:16:59 -07:00
Evan Tschannen
ced65cd30b finished explicitly versioning everything stored in the database 2020-05-22 17:14:21 -07:00
Evan Tschannen
72ce997d22 explicitly versioned every key in systemData, so we only will update the associated protocolVersion when the serialization actually changes 2020-05-22 16:35:01 -07:00
Evan Tschannen
8fd926e08e serialize old tlog entries with old protocol versions to support downgrades 2020-05-22 14:00:07 -07:00
Evan Tschannen
19a9ae14c2 update master version to 7.0.0 2020-05-10 23:51:15 -07:00
Evan Tschannen
6db801ea53 shrink the serialized size of StorageServerInterface 2020-05-01 21:37:19 -07:00
negoyal
a0c8946f31 Merge branch 'master' into fdb_cache_subfeature2 2020-04-02 12:27:04 -07:00
Andrew Noyes
9123cd35ed Version report_conflicting_keys field 2020-03-24 18:11:15 -07:00
negoyal
85cc35e81e Merge branch 'master' into HEAD 2020-02-05 14:59:55 -08:00
Jingyu Zhou
17002740bb Add epoch and backup workers to DBCoreState
This enables backup workers to know the end version of the epoch. Additionally,
the master recovery only needs to deal with crashed backup workers by
recruiting new workers to backup the unfinished version range.
2020-01-22 19:38:45 -08:00
negoyal
cf2563f1c7 Mix of various things, a lot of which will change. 2019-12-05 17:10:32 -08:00
Evan Tschannen
688940b685 merge 6.2 into master 2019-10-21 11:43:46 -07:00
Alex Miller
d38a96ab73 Make LogData aware of the spill type it was created to perform.
The spilling type is now pulled out of the request, and then stored on
LogData for later access, and persisted in the tlog metadata per tlog
generation.

It turns out that serializing types as Unversioned is a bit wonky.
2019-10-03 01:45:10 -07:00
Evan Tschannen
9ec9f41d34 backup and DR would not share mutations if they were started on different versions of FDB 2019-10-01 18:52:07 -07:00
A.J. Beamon
64ce0c3285 Remove the unused getVersion from StorageServerInterface. 2019-08-26 13:53:54 -07:00
A.J. Beamon
b91795d288 Send bytes input rate to DD. 2019-07-25 16:27:32 -07:00
Balachandar Namasivayam
af267ba053 Track the priority of sampled Transaction as part of GetReadVersion event. 2019-07-19 17:31:49 -07:00
Evan Tschannen
7f4586ad49 the number of txsTags needs to be tracked separately from the number of transaction logs because of forced recoveries 2019-06-28 12:33:24 -07:00
Evan Tschannen
52efcfd136 fix: properly create the right number for txsTags when changing between different numbers of logs 2019-06-27 15:15:05 -07:00
mpilman
68ce9a5e75 ProtocolVersion type - second try 2019-06-18 17:55:27 -07:00
mpilman
8576665a90 Revert "Revert "Make protocol version a type""
This reverts commit 455bf3b3ec9d5a347b68bf4fa89bf042f5ac312e.
2019-06-18 14:49:04 -07:00
Alex Miller
455bf3b3ec Revert "Make protocol version a type" 2019-06-18 10:59:17 -07:00
mpilman
4a14117549 Fixed typo 2019-06-17 09:30:28 -07:00
mpilman
52da31bfb3 Simplifications and addressed reviews 2019-06-16 11:07:10 -07:00
Markus Pilman
882fa39e80 fixed typo
Co-Authored-By: A.J. Beamon <ajbeamon@users.noreply.github.com>
2019-06-16 09:59:15 -07:00
Markus Pilman
23fb403216 Fix typo
Co-Authored-By: A.J. Beamon <ajbeamon@users.noreply.github.com>
2019-06-16 09:59:15 -07:00
mpilman
dc9522bd86 Address code-review comments 2019-06-16 09:59:15 -07:00
mpilman
9fd8dac767 Added license header to new file 2019-06-16 09:59:15 -07:00
mpilman
da53a92bec Make protocol version a type
This fixes #1214

The basic idea is that ProtocolVersion is now its own type. This
alone is an improvement as it makes many things more typesafe. For
each version, we can now add breaking features (for example Fearless).
After that, there's no need to test against actual (confusing) version
numbers. Instead a developer can simply test
`protocolVersion->hasFearless()` and this will return true iff the
protocolVersion is newer than the newest version that didn't support
fearless.
2019-06-16 09:59:15 -07:00