Commit Graph

209 Commits

Author SHA1 Message Date
Chaoguang Lin 556b239057 clang-format 2020-08-20 14:51:41 -07:00
Chaoguang Lin e54f728d42 update comments 2020-08-20 14:41:17 -07:00
Chaoguang Lin 4a8a356ffb throw special_keys_api_failure if clear called on \xff\xff/configuration/class 2020-08-20 14:38:07 -07:00
Chaoguang Lin 1815cc24a3 Use default set and clear implementations for exclude and failed 2020-08-20 14:26:41 -07:00
Chaoguang Lin 707b88583a Add default encode, decode methods. Add test for setclass special keys 2020-08-20 13:50:35 -07:00
Chaoguang Lin 5660de9c09 Add \xff\xff/configuration/class to change process class 2020-08-19 17:54:38 -07:00
Chaoguang Lin b9474055a5 Add \xff\xff/configuration/class to read process class 2020-08-14 01:01:08 -07:00
Chaoguang Lin b682ad75f9 Fix a memory bug, change \xff\xff/management/options/exclude/force to .../excluded/force 2020-08-05 13:18:39 -07:00
Chaoguang Lin d9e5d65aaf Merge remote-tracking branch 'upstream/master' into add-management-api-into-special-key-space 2020-08-01 00:31:26 -07:00
Chaoguang Lin 6dc8b4c1e9 Fix \xff\xff in error message 2020-07-31 13:31:36 -07:00
Chaoguang Lin a048e5e159 Change prefix to \xff\xff/management and make decode/encode as pure functions 2020-07-31 02:18:49 -07:00
Chaoguang Lin c8a2e7ab07 Add operation instruction in error message for failure of exclusion safety check 2020-07-30 22:38:35 -07:00
Chaoguang Lin 05a0a47824 throw actor_cancelled error 2020-07-30 22:15:22 -07:00
Chaoguang Lin 10540a3c73 Change error name and fix a bug in ExclusionInProgressRangeImpl::getRange() 2020-07-30 18:58:09 -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
Chaoguang Lin 70aecfa2d6 refine ManagementCommandsOptionsImpl::clear(..., range) 2020-07-28 13:32:31 -07:00
Chaoguang Lin 726eb18119 Fix typo 2020-07-28 11:39:29 -07:00
Chaoguang Lin a641429d63 Add an enum for implementation type and use for registeration 2020-07-27 12:29:03 -07:00
Andrew Noyes 57b29fd4cd Fix memory error 2020-07-24 23:31:16 +00:00
Chaoguang Lin b495c8a664 Remove unnecessary code 2020-07-24 12:25:03 -07:00
Chaoguang Lin ec9553b6c6 change \xff\xff/failure to \xff\xff/error_message 2020-07-24 11:38:56 -07:00
Chaoguang Lin 74da032967 Add a decode function to map special keys to its real keys that needs to be modified 2020-07-17 15:16:28 -07:00
Chaoguang Lin a1eeb9c3ee Update traces for debugging 2020-07-17 12:36:50 -07:00
Chaoguang Lin 1e5096990e Add the function to return the special key for given management api command and option 2020-07-17 12:32:42 -07:00
Chaoguang Lin 96e5a4c827 Replace all \xff\xff/conf with managementApiRange.begin 2020-07-17 11:56:27 -07:00
Chaoguang Lin 5fa6785fb8 Add special keys for command options 2020-07-16 18:15:35 -07:00
Chaoguang Lin 52778bdf84 Add debugging trace 2020-07-15 17:30:45 -07:00
Chaoguang Lin 1e7db425d0 fix bug when returning the error message for checkExclusion 2020-07-15 16:15:43 -07:00
Chaoguang Lin e9d0205091 fix a boundary bug when throw cross-module-clear errors 2020-07-14 11:56:40 -07:00
Chaoguang Lin 3f4da830a2 Merge remote-tracking branch 'upstream/master' into add-management-api-into-special-key-space 2020-07-14 10:36:47 -07:00
Chaoguang Lin 1635e8e0ba using special keys in management api for include when api_version >= 700 2020-07-14 10:31:19 -07:00
Chaoguang Lin 60d1bfc247 Add read impl for inProgressExclusionServers 2020-07-13 13:35:25 -07:00
Jingyu Zhou 2e5ae8eed5 Change iterator name to small case 2020-07-10 10:56:41 -07:00
Chaoguang Lin 5f6093b59e Add an option to enable write in special key space, which is by default not allowed 2020-07-08 15:49:34 -07:00
Chaoguang Lin caebc5b6d0 Fix typo 2020-07-06 16:42:42 -07:00
Chaoguang Lin 0361eb5079 Add FailedServersImpl 2020-07-06 15:40:21 -07:00
Chaoguang Lin aa587ee6c2 Move Implementations to .cpp file 2020-07-06 14:02:22 -07:00
Chaoguang Lin 38e2310530 Enable range clear in special key space 2020-07-06 12:11:01 -07:00
Chaoguang Lin 784d0f6d00 A basic feasible version for exclude and include commands 2020-07-06 11:02:48 -07:00
Andrew Noyes 409ccf3be2 Use snake_case to match status json convention 2020-06-30 17:05:29 +00:00
Andrew Noyes e1dfa410c1 Remove "Storages" field from data_distribution_stats
It seems like a cool idea, but it feels rushed to me. Reverting for now.
2020-06-30 15:24:16 +00:00
Andrew Noyes 0db3145e82 Include storage id's in data_distribution_stats 2020-06-30 15:24:15 +00:00
Andrew Noyes ffd1467367 Add \xff\xff/metrics/health/* 2020-06-30 15:24:15 +00:00
Chaoguang Lin e2c5938c28 Update module registration for readwrite module 2020-06-29 15:37:46 -07:00
Chaoguang Lin 18ff6efbf3 Add failure module for special key space 2020-06-27 12:22:32 -07:00
Chaoguang Lin fc8715dacd Adding write support for special-key-space 2020-06-23 11:21:03 -07:00
Chaoguang Lin 59361cedaa Rename to have read and write impls and add set, clear, clearrange interfaces 2020-06-22 14:02:03 -07:00
Chaoguang Lin 5f4dde0b7a Rename member variables 2020-06-22 13:59:16 -07:00
Chaoguang Lin 98026486fc fix small issues 2020-06-22 13:53:24 -07:00
Chaoguang Lin 84c0856897 add management api to special-key-space getrange 2020-06-22 13:52:48 -07:00
Chaoguang Lin 65916d7b10 Solve comments 2020-06-17 12:47:54 -07:00
Chaoguang Lin 9fbdd770ba Update comments 2020-06-17 11:28:52 -07:00
Chaoguang Lin 0d9d20998e Assert ryw not null, remove unit tests 2020-06-17 11:13:55 -07:00
Chaoguang Lin 32794a6917 Make key selectors clamp up to the boundary of the module rather than throw cross_module_error 2020-06-17 10:33:52 -07:00
Chaoguang Lin 7a5fe3800d Add comments, refine traces, add delay to dd rpc calls in the test 2020-06-15 15:31:55 -07:00
Chaoguang Lin 980bee1d13 Fix fetchShardMetricsList_impl and add read cache in special key space 2020-06-12 10:12:44 -07:00
Andrew Noyes 7f9bdbb2b1 Update DDStatsRangeImpl 2020-05-21 18:26:34 +00:00
Andrew Noyes a2fd6d46a0 Cancel pending special key space reads on destroy
Previously the special key space would take a reference to the
transaction, but this doesn't make sense since the transaction might not
be refcounted
2020-05-21 17:37:11 +00:00
Chaoguang Lin afa7c0a9cc Change the value format to as json string 2020-05-20 15:59:01 -07:00
Chaoguang Lin 7971be2a19 update commetns 2020-05-19 20:48:21 -07:00
Chaoguang Lin 93ca130602 Delete the unnecessay endKey field in DDMetricsRef, since each begin key is the previous end key 2020-05-19 13:32:42 -07:00
Chaoguang Lin 00dce3ca1d clang-format 2020-05-18 14:23:17 -07:00
Chaoguang Lin e3921504d7 Delete comments 2020-05-18 14:21:38 -07:00
Chaoguang Lin 6e684dda35 Using dd-stats zerobytes const in the workload 2020-05-18 11:53:26 -07:00
Chaoguang Lin bf62ef7c3e Add dd-stats into special-key-space 2020-05-18 10:38:23 -07:00
Chaoguang Lin 87ac003967 add tests for no_module_found error, fix one bug caught by the test 2020-05-15 16:34:43 -07:00
Chaoguang Lin 032bc59cdb Add tests for special_keys_cross_module_read cases, fixed one corner case 2020-05-15 16:34:43 -07:00
Chaoguang Lin 2b84c3224f update special-key-space comments 2020-05-15 16:34:43 -07:00
Chaoguang Lin 4a13107805 Add a test for special_keys_cross_module_read, fix two bugs, add several TODOs 2020-05-15 16:34:43 -07:00
Chaoguang Lin 8cc8ceb09c Add check for range read cross module boundary, maybe improved later 2020-05-15 16:34:43 -07:00
Chaoguang Lin c61e198e40 Using enum class instead of enum 2020-05-15 16:34:43 -07:00
Chaoguang Lin 43a28c254a fix the bug when moving over null-impl-range 2020-05-15 16:34:42 -07:00
Chaoguang Lin e4655f33fc use std::unordered_map and ::at to get values 2020-05-15 16:34:42 -07:00
Chaoguang Lin e1c4e5f619 Add enums for special-key-space modules and refactor related code 2020-05-15 16:34:42 -07:00
Chaoguang Lin 944f87e17b Refactor special-key-space code that handles the normalization of keySelectors 2020-05-15 16:34:42 -07:00
Chaoguang Lin 0e6d67aa5f Rename pks to sks, as the shorthand for special-key-space 2020-05-15 16:34:42 -07:00
chaoguang bb1b5c4f9d update special-key-space comments 2020-05-15 16:34:42 -07:00
Andrew Noyes d48185bbed Remove unnecessary usages
I wish I remember why I added these
2020-05-09 02:47:05 +00:00
Andrew Noyes a53d05ea2d Fix bug and add test 2020-05-09 02:46:40 +00:00
Andrew Noyes 524a5c19e4 Rename to onModuleRead, add missing usages 2020-05-08 05:37:37 +00:00
Andrew Noyes 6b35b1b686 Disallow no-module read by default 2020-05-08 05:37:37 +00:00
Andrew Noyes 1d6209e304 Check for cross-module reads 2020-05-08 05:37:37 +00:00
Andrew Noyes f4cc1d3a4f Remove more auto-added headers 2020-05-04 20:44:57 -07:00
Andrew Noyes f1d9c0cb97 Refactor/cleanup 2020-04-30 00:30:37 +00:00
Andrew Noyes 4fce3032d9 Rename debug_onIdle 2020-04-30 00:30:37 +00:00
Andrew Noyes fdd6581167 Add write conflict range 2020-04-30 00:30:37 +00:00
Andrew Noyes e1c3c73d4c Rudimentary read your own read conflict range 2020-04-30 00:30:37 +00:00
chaoguang 456b794d24 Reformat the file 2020-04-15 12:24:44 -07:00
chaoguang ae1de060c2 Reformat SpecialKeyRangeBaseImpl constructor 2020-04-14 09:10:40 -07:00
chaoguang 2a6de93b92 add copyright information 2020-04-08 14:50:55 -07:00
chaoguang 4a9658d6b8 fix issues according to andrew's comments 2020-04-08 13:38:12 -07:00
chaoguang 20b2984841 fix issues according to andrew's comments 2020-04-08 12:43:25 -07:00
chaoguang efca39a09a make traces SevDebug to avoid too verbose 2020-04-07 12:49:46 -07:00
chaoguang ff92336887 refine code 2020-04-07 10:25:26 -07:00
chaoguang 640a29252b add comments 2020-04-07 00:24:01 -07:00
chaoguang 86c66a4fca add a parameter indicating whether keys are prefixed with \xff\xff 2020-04-07 00:08:47 -07:00
chaoguang e4d99b0197 remove snapshot argument in the interface 2020-04-06 22:09:17 -07:00
chaoguang 9408915ab9 reformat code 2020-04-06 13:38:18 -07:00
chaoguang 33780fc16e reformat code 2020-04-06 13:23:41 -07:00
chaoguang aad8f850f3 refactor conflicting keys feature using special key space 2020-04-04 13:26:11 -07:00
chaoguang 36bf2ecf4c add \xff\xff prefix to returned keys 2020-04-03 00:26:11 -07:00
chaoguang 9d1e4ec66c refine part of the code 2020-03-31 09:33:25 -07:00
chaoguang 1d790346c9 refine part of the code 2020-03-31 01:44:02 -07:00
chaoguang 53a04740be refine part of the code 2020-03-31 01:36:07 -07:00
chaoguang 37ca0bf7e2 add code to handle the three flags in RangeResultRef 2020-03-30 23:27:09 -07:00
chaoguang 6df92a8b8d A work version of strict workload test 2020-03-23 23:55:56 -07:00
chaoguang ab33e688c8 comment 2020-03-09 10:45:57 -07:00
chaoguang 2ee6de92bc updat comments 2020-03-04 13:44:20 -08:00
chaoguang 457f95156d Change name from private-key-space to special-key-space 2020-03-03 18:35:24 -08:00