Nim Wijetunga
6f37f55917
Restore System Keys First in Backup/Restore Workloads ( #8475 )
...
* system key restore ordering
* restore system keys before regular data
* atomic restore backup fix
* change testing
* fix compile error
* fix compile issue
* fix compile issues
* Trigger Build
* only split restore if encryption is enabled
* revert knob changes
* Update fdbserver/workloads/AtomicSwitchover.actor.cpp
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
* Update fdbserver/workloads/AtomicSwitchover.actor.cpp
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
* Update fdbserver/workloads/BackupCorrectness.actor.cpp
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
* Update fdbserver/workloads/AtomicRestore.actor.cpp
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
* add todo
* strengthen check
* seperate system restore for atomic restore
* address pr comments
* address pr comments
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
2022-10-26 09:38:27 -07:00
Markus Pilman
49f0cf5ab0
Force name and description of workloads to be the same
2022-10-13 20:53:48 -06:00
A.J. Beamon
3353103d9d
Fix filtering of potential backup mutations in commit proxy and backup worker; add code probe to ensure we are testing default backup sharing and add some tests to hit it
2022-09-27 15:25:30 -07:00
A.J. Beamon
fda0d7223d
Update backup to include system key ranges needed for tenants. Run simulated backup tests with tenants.
2022-09-22 10:00:13 -07:00
A.J. Beamon
4fd64630e8
Convert literal string ref instances to use _sr suffix
2022-09-19 11:35:58 -07:00
sfc-gh-tclinkenbeard
82adc1e856
Make g_simulator a pointer
2022-09-15 09:00:33 -07:00
Dennis Zhou
80a0816157
flow: switch from hard coded to ApiVersion like ProtocolVersion ( #8071 )
...
* flow: add ApiVersion to replace hard coding api version
Instead of hard coding api value, let's rely on feature versions akin to
ProtocolVersion.
* ApiVersion: remove use of -1 for latest and use LATEST_VERSION
2022-09-02 09:28:13 +02:00
A.J. Beamon
279296c29f
Merge branch 'tenant-metadata-change' into feature-metacluster
...
# Conflicts:
# fdbclient/SystemData.cpp
# fdbclient/Tenant.cpp
# fdbclient/include/fdbclient/SystemData.h
# fdbclient/include/fdbclient/Tenant.h
# fdbclient/include/fdbclient/TenantManagement.actor.h
# fdbserver/TenantCache.actor.cpp
# fdbserver/storageserver.actor.cpp
# fdbserver/workloads/TenantManagementWorkload.actor.cpp
2022-07-20 09:18:27 -07:00
Markus Pilman
1de37afd52
Make TEST macros C++ only ( #7558 )
...
* proof of concept
* use code-probe instead of test
* code probe working on gcc
* code probe implemented
* renamed TestProbe to CodeProbe
* fixed refactoring typo
* support filtered output
* print probes at end of simulation
* fix missed probes print
* fix deduplication
* Fix refactoring issues
* revert bad refactor
* make sure file paths are relative
* fix more wrong refactor changes
2022-07-19 13:15:51 -07:00
A.J. Beamon
e1a93988ef
Merge branch 'main' into feature-metacluster
2022-06-28 14:58:07 -07:00
A.J. Beamon
986dd67278
Add some basic support for running multiple extra clusters in simulation. Use this to simulate a metacluster in some tests.
2022-06-10 10:08:18 -07:00
sfc-gh-tclinkenbeard
a71099471b
Update copyright header dates
2022-03-21 13:36:23 -07:00
A.J. Beamon
e882eb33fc
Abstract the cluster file into a cluster connection record that can be backed by something other than the filesystem.
2021-10-22 11:05:18 -07:00
Xiaoge Su
abf73047ca
Enforce std:: specifier rather than using namespace
2021-09-16 19:40:28 -07: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
sfc-gh-tclinkenbeard
8370d92c20
Expand use of BOOLEAN_PARAM in backup code
2021-07-04 18:30:55 -07:00
sfc-gh-tclinkenbeard
cadfdc551e
Use BOOLEAN_PARAM for backup agents
2021-07-04 16:27:26 -07:00
sfc-gh-tclinkenbeard
5c2d7b6080
Create RangeResult type alias
2021-05-03 13:14:16 -07:00
Lukas Joswiak
66d88e5f12
Merge branch 'master' into fixes/backup-delete
2021-04-20 14:49:26 -07:00
Lukas Joswiak
12e9e59c1b
Remove redundant clear range before backup
2021-04-20 14:03:44 -07:00
Lukas Joswiak
8b2a72fea2
Add option to clear destination range before backup
2021-04-20 12:24:17 -07:00
Lukas Joswiak
1c4f72c98a
Add explanation comment
2021-04-20 09:35:40 -07:00
Lukas Joswiak
92d11cb09e
Add idleness comment
2021-04-20 09:35:40 -07:00
Lukas Joswiak
3b95559419
Fix indexes
2021-04-20 09:35:40 -07:00
Lukas Joswiak
9baa837b2d
Compare range contents instead of size
2021-04-20 09:35:40 -07:00
Lukas Joswiak
5d0d837268
Fix version cutoff
2021-04-20 09:35:40 -07:00
FDB Formatster
df90cc89de
apply clang-format to *.c, *.cpp, *.h, *.hpp files
2021-03-10 10:18:07 -08:00
sfc-gh-tclinkenbeard
f3c0d26806
Make ISimulator::BackupAgentType an enum class
2020-12-08 09:09:30 -08:00
Markus Pilman
bdd3dbfa7d
remove duplicates
2020-11-10 14:01:07 -07:00
sfc-gh-tclinkenbeard
4669f837fa
Add uses of makeReference
2020-11-07 22:10:18 -08:00
sfc-gh-tclinkenbeard
cf4c8e375f
Merge remote-tracking branch 'origin/release-6.3' into merge
2020-10-29 22:15:41 -07:00
Jingyu Zhou
e183a10c8c
Add "waitForDestUID" flag for abortBackup
2020-10-20 22:55:31 -07:00
Jingyu Zhou
bfd3328448
Fix a race between submit and abort backup
...
After submit a backup, immediately abort the backup may cause a rare race
condition, which results in BackupCorrectnessLeftoverVersionKey error.
Specifically, in the StartFullBackupTaskFunc:
1st Txn sets the destUid at the source database and the 2nd Txn writes the dest
DB.
An abort can come after the 1st Txn succeeds, and clears the config rage so
that the 2nd Txn above would fail. Because 2nd Txn didn't write destUid, the
3rd Txn of abort can't read the correct source DB for latestVersionKey, which
contains the destUid value.
The fix is to let the 1st Txn of abort to wait until destUid becomes valid.
2020-10-18 23:11:15 -07:00
sfc-gh-tclinkenbeard
7f0d14c8e4
Modernize/refactor workloads directory
2020-10-04 22:29:07 -07:00
sfc-gh-tclinkenbeard
d13a9d3c91
Make EBackupState an enum class
2020-09-23 15:14:09 -07:00
Jingyu Zhou
9bf02584a0
Fix restore_destination_not_empty error
2020-07-21 22:56:51 -07:00
KoukiNishihara
ab3de8700e
Rename fastRestoreAgent to fastRestoreTool
2020-07-03 00:16:39 +09:00
Andrew Noyes
ae7ef12102
Fix nodiscard errors
2019-08-16 09:24:57 -07:00
A.J. Beamon
5f55f3f613
Replace g_random and g_nondeterministic_random with functions deterministicRandom() and nondeterministicRandom() that return thread_local random number generators. Delete g_debug_random and trace_random. Allow only deterministicRandom() to be seeded, and require it to be seeded from each thread on which it is used.
2019-05-10 14:01:52 -07:00
mpilman
699216f713
Use fwd decls in workloads
...
Also workloads.h -> workloads.actor.h
2019-02-19 15:16:59 -08:00
mpilman
3a0f9839b9
Fix minor IDE build errors
2019-02-19 15:16:59 -08:00
mpilman
78dd80ea8a
Proper fwd decl in BackupAgent
...
Also BackupAgent.h -> BackupAgent.actor.h
2019-02-19 15:16:59 -08:00
Andrew Noyes
067a445e06
Replace unused _ variables with wait(success(...))
2019-02-12 17:30:30 -08:00
Evan Tschannen
a654183f63
Merge pull request #791 from ajbeamon/remove-cluster-from-iclientapi
...
Remove cluster from IClientApi (phase 2 of removing DB names)
2018-11-10 10:16:18 -08:00
Robert Escriva
268093a96d
Adjust all includes to be relative to the root.
...
Remove the use of relative paths. A header at foo/bar.h could be included by
files under foo/ with "bar.h", but would be included everywhere else as
"foo/bar.h". Adjust so that every include references such a header with the
latter form.
Signed-off-by: Robert Escriva <rescriva@dropbox.com>
2018-10-19 17:35:33 +00:00
A.J. Beamon
c831051474
This removes the idea of clusters from IClientApi.
2018-09-21 15:58:14 -07:00
A.J. Beamon
2a97139d5d
This is the first step in eliminating the usage of database names in our code. The C API remains the same, but underneath that all usage of database names is eliminated.
2018-08-16 10:24:12 -07:00
Alex Miller
fb31a6999f
Rewrite all files to have #include actorcompiler.h as the last include.
2018-08-14 15:50:26 -07:00
Alex Miller
535b5701e5
Rewrite all `Void _ = wait(...)` -> `wait(...)`.
...
This takes advantage of the new actorcompiler functionality to avoid
having duplicate definitions of `Void _` when trying to feed the
un-actorompiled source through clang.
2018-08-14 15:50:26 -07:00
Evan Tschannen
1c29275672
call all methods which could disable a trace event before it is initialized. In practice this means calling .error first, then .suppressFor, then all your details.
2018-08-01 14:30:57 -07:00