Young Liu
1ad5e17458
add support for comparing original and current impls
2020-09-05 11:14:59 -07:00
Meng Xu
43d55fb73f
AtomicRestore:Fix typo in comments
2020-06-25 13:24:58 -07:00
Meng Xu
c13ba7aeb4
FastRestore:Cosmetic code style improvement
...
Also mute some trace events
2020-06-24 21:25:37 -07:00
Meng Xu
a0edd1d4eb
FastRestore:Disable addPrefix test
2020-06-24 14:26:33 -07:00
Meng Xu
6eb8dc58b6
FastRestore:addPrefixTest:Fix calling transformRestoredDatabase
2020-06-23 15:02:38 -07:00
Meng Xu
4e27fd34e5
Refactor transformDatabaseContents into RestoreCommon
...
Prepare to enable addPrefix for atomicRestore
2020-06-23 14:33:13 -07:00
Meng Xu
f6954ef038
FastRestore:Test both addPrefix and not add it
2020-06-23 13:09:02 -07:00
Meng Xu
b66b8d3c74
FastRestoreTest:run writeKVs concurrently
2020-06-23 12:50:36 -07:00
Meng Xu
142fa5477b
Add SevFRTestInfo trace level to control debug info in BackupAndParallelRestoreCorrectness
2020-06-23 10:49:05 -07:00
Meng Xu
c20d0120ac
BackupAndParallelRestoreCorrectness:Avoid false positive in SanityCheckData
...
addPrefix can happen to be the prefix of valid backup data. So we cannot
enforce the final data in DB does not have addPrefix as prefix
2020-06-23 07:40:43 -07:00
Meng Xu
d9610fe745
BackupAndParallelRestoreCorrectness:Fix memory leak that cause nondeterminism error
2020-06-23 00:13:48 -07:00
Meng Xu
44af9273cd
BackupAndParallelRestoreCorrectnessWorkload:Change unnecessary Key to KeyRef
2020-06-22 23:39:46 -07:00
Meng Xu
c4ac68ef1e
FastRestore:CorrectnessTest:Fix writeKVs
...
runRYWTransaction() should not modify states whose lifetime is outside of the funtion.
Otherwise, the retry in runRYWTransaction() will be wrong.
2020-06-22 23:00:57 -07:00
Meng Xu
dd5c1ec416
FastRestore:Add debug trace
...
The bug behavior is:
In transformDatabaseContents(), we write all new kvs into the DB in 100 keys batch.
We immediately read these keys out.
There are 100 keys missing.
2020-06-22 19:47:21 -07:00
Meng Xu
b122575dda
BackupAndParallelRestoreWithAtomicOp:Turn on debug options
2020-06-22 16:53:43 -07:00
Meng Xu
f16381c7e8
FastRestore:Clean backup ranges
2020-06-22 11:43:24 -07:00
Meng Xu
3d6f69c8e2
FastRestore:addPrefix:Transform must clear both orignal and transformed range
...
Otherwise, anything left in the range can interfer with the result.
2020-06-21 22:18:12 -07:00
Meng Xu
9318ec033d
FastRestore:FixTest:Remove unnecessary read
2020-06-20 20:07:18 -07:00
Meng Xu
11af1a6916
FastRestore:Transform only backup ranges when addPrefix and removePrefix exist
2020-06-20 19:21:16 -07:00
Meng Xu
faec3cc556
FastRestore:Fix attempt:Seg fault
2020-06-19 16:07:09 -07:00
Meng Xu
6eb00763bf
FastRestore:Clear intermediate keys
...
Otherwise, the intermediate keys (keys with the addPrefix and removePrefix) will
change the DB final state and affect the consistency check.
2020-06-19 14:25:44 -07:00
Meng Xu
113f86d003
FastRestore:Fix:Transform restored keys with prefix back to original keys
2020-06-18 20:59:03 -07:00
Meng Xu
a59044150f
FastRestore:Transform keys when DB is locked
2020-06-18 17:51:47 -07:00
Meng Xu
8d59568dc7
FastRestore:Fix:Forgot to assign transformed key to mutations
...
The earlier change in restore logic did not really take effect.
This commit fix it and confirm the addPrefix test does cause expected
failures if we do not transform the keys at the end of the test.
2020-06-18 17:40:16 -07:00
Meng Xu
1873ba6f90
FastRestore:Minor change on trace events
2020-06-18 16:09:18 -07:00
Meng Xu
71d76e5c7c
FastRestore:Fix testing on addPrefix
2020-06-18 15:54:19 -07:00
Meng Xu
21ced91e64
FastRestore:Evaluate addPrefix test is used
2020-06-18 13:43:33 -07:00
Meng Xu
3a2ae7cb0e
FastRestore:Test:Generate random addPrefix
2020-06-18 12:45:18 -07:00
Meng Xu
2fcef90cbc
FastRestore:Add addPrefix and removePrefix feature
2020-06-18 11:58:42 -07:00
Meng Xu
d7a8e554ed
FastRestore:Test for addPrefix and removePrefix
...
Add the skeleton code to test;
addPrefix and removePrefix are all empty for now.
2020-06-17 20:36:53 -07:00
Meng Xu
164814cd23
Merge branch 'release-6.3' into mengxu/fr-addPrefix-PR
...
Also remove the unnecessary try catch block for unlockDatabase() in
parallelRestoreFinish actor
2020-06-09 22:04:19 -07:00
Meng Xu
dd8af487ec
FileBackupAgent:parallelRestoreFinish:verify if operation_cancelled error ever happens
2020-06-09 17:08:57 -07:00
Meng Xu
8533daac50
parallelRestoreFinish:fix used_during_commit error
2020-06-09 15:40:24 -07:00
Meng Xu
e5e4cb5c90
parallelRestoreFinish:separate check restore finished and clear restoreRequestDoneKey
2020-06-09 11:32:20 -07:00
Jingyu Zhou
4315af25e7
Fix unfinished restore tests
...
Because backup worker is disabled before performing the restore, we can't allow
a new backup of the new type running.
2020-05-19 15:18:45 -07:00
tclinken
943e8e7e84
More fixes for OPEN_FOR_IDE build
2020-05-01 23:04:12 -07:00
Jingyu Zhou
0e54f1ed31
Fix a test failure
...
minRestorableVersion may be decided by snapshot version and is larger than
contiguousLogEnd version.
2020-04-20 22:26:42 -07:00
Meng Xu
916d361587
BackupAndParallelRestoreCorrectness:Remove unnecessary checking optional variable
2020-04-17 18:32:14 -07:00
Meng Xu
14406ad940
BackupAndParallelRestoreCorrectness:Assert on backup validity
2020-04-17 13:51:39 -07:00
Meng Xu
52dba96f07
Fix:Segmentation fault when get status in BackupAndParallelRestore workload
2020-04-17 13:40:32 -07:00
Jingyu Zhou
4e128328f7
Stop backup workers before clearing DB in parallel restore workload
...
This is because the clearing of DB can be picked up by backup workers and be
applied during restore, causing restore failures.
2020-04-11 10:26:08 -07:00
Jingyu Zhou
db2cef844b
Write mutation log type as a backup property
...
This can solve the problem when listing log files returns empty results.
2020-04-09 09:29:24 -07:00
Jingyu Zhou
0cf6013357
Refactor to remove describePartitionedBackup()
...
The backup container can figure out if partitioned logs are used by looking at
mutation logs, thus consolidating the API to a single describeBackup() as
before.
2020-04-08 15:59:37 -07:00
Jingyu Zhou
9fb3fb9d82
Add pause/resume for new backups
...
To pause/resume the backup workers, the fdbbackup command will write to the
backupPausedKey. Then backup workers noticed the value of the key has been
changed and stops/resumes pulling from TLog.
2020-04-06 14:29:46 -07:00
Meng Xu
75fc9af5c8
Apply clang format
2020-03-27 16:55:52 -07:00
Meng Xu
32b0ba1822
Merge branch 'master' into mengxu/parallel-range-log-file-loading-PR
2020-03-27 12:13:47 -07:00
Meng Xu
113d0fb48b
Remove incorrect assertion
2020-03-27 12:13:30 -07:00
Jingyu Zhou
6be913a430
Add partitioned logs option to AtomicRestore workload
2020-03-26 13:04:00 -07:00
Jingyu Zhou
aca458cd96
Set 50% chance to restore old backup files for fast restore
2020-03-26 13:04:00 -07:00
Jingyu Zhou
772ab70aee
Add an option for fast restore to restore old backups
...
If "usePartitionedLogs" is set to false, then the workload uses old backups for
restore.
2020-03-26 13:04:00 -07:00