Commit Graph

11004 Commits

Author SHA1 Message Date
sfc-gh-tclinkenbeard 949a17359a Added to_6.3.0 downgrade test to test harness 2020-07-09 14:29:43 -07:00
sfc-gh-tclinkenbeard 373b5ffb4f Added forward compatibility and Downgrade workload 2020-07-09 14:28:35 -07:00
sfc-gh-tclinkenbeard d3d7ad6de5 Simplify _Reader constructors 2020-07-09 14:28:34 -07:00
sfc-gh-tclinkenbeard 080a67d76f Added BinaryReader::objectReader field 2020-07-09 14:28:34 -07:00
sfc-gh-tclinkenbeard 67f17ccf5c Remove duplicate BinaryReader code 2020-07-06 23:14:34 -07:00
Jingyu Zhou 8f842a66e4
Merge pull request #3397 from xumengpanda/mengxu/fr-addPrefix-PR
Fast Restore: Support and test addPrefix and removePrefix feature
2020-06-25 14:06:39 -07:00
Meng Xu 43d55fb73f AtomicRestore:Fix typo in comments 2020-06-25 13:24:58 -07:00
Steve Atherton af6b141736
Merge pull request #3407 from sfc-gh-tclinkenbeard/fix-vectorref-memory-leaks
Fix memory leaks in VectorRef
2020-06-25 00:54:33 -07:00
Meng Xu 5860a5b4db FastRestore:Suppress or mute spammy trace events 2020-06-24 22:10:54 -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 94b1e17a96 FastRestore:Fix:Avoid reset txn backoff time in sanity check 2020-06-24 21:10:47 -07:00
Meng Xu d2b71e77c2 FastRestore:Fix:checkDatabaseLock tr should not reset 2020-06-24 20:21:49 -07:00
Jingyu Zhou 5cd3dad986
Merge pull request #3409 from sears/assert_strings
Print out the text (to stderr and as trace) of the failed condition o…
2020-06-24 14:58:12 -07:00
Meng Xu a0edd1d4eb FastRestore:Disable addPrefix test 2020-06-24 14:26:33 -07:00
Russell Sears 422003df34 Print out the text (to stderr and as trace) of the failed condition on assert failure 2020-06-24 14:21:48 -07:00
sfc-gh-tclinkenbeard 3f6222a04d Mark DebugEntryRef trivially destructible 2020-06-24 14:08:22 -07:00
sfc-gh-tclinkenbeard 8de70432a6 Fix memory leaks in VectorRef
VectorRef<T> relies on T being trivially destructible, but this was not
yet enforced. By statically asserting that T is trivially destructible,
we avoid leaking memory by not calling the destructor for non-trivially
destructible types
2020-06-24 10:54:19 -07:00
Meng Xu b69c36f0d6 transformDatabaseContents:cosmetic change 2020-06-23 19:27:58 -07:00
Meng Xu 198696bc1e Move transformRestoredDatabase from server to client
AtomicRestore workload turns out to rely on the FileBackupAgent
client. Keeping transformRestoredDatabase in server makes linking harder.
2020-06-23 15:48:43 -07:00
Evan Tschannen 0000d81595
Merge pull request #3377 from yliucode/fix-recent-requests
Fix GetReadVersionReply.recentRequests to reflect a proxy's number of recent requests in the commit stats.
2020-06-23 15:05:57 -07:00
Meng Xu 6eb8dc58b6 FastRestore:addPrefixTest:Fix calling transformRestoredDatabase 2020-06-23 15:02:38 -07:00
Meng Xu 84a640e4ee AtomicRestore:Add addPrefix test for fast restore 2020-06-23 14:52:27 -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 d0c0d06b1e FastRestore:Avoid calling withPrefix when addPrefix is not set
It help improve performance when addPrefix is not set.
2020-06-23 10:43:35 -07:00
Meng Xu 10e043da9d Format sim2 code a bit 2020-06-23 10:07:39 -07:00
Meng Xu 90861ead6a Reenable all tests in BackupAndParallelRestoreWithAtomicOp 2020-06-23 08:29:31 -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 9cff90fb5f runRYWTransaction:Add comment to remind func should be idempodent 2020-06-22 23:04:09 -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 d268b6c055 Sim2:Remove an useless line 2020-06-18 12:12:15 -07:00