Commit Graph

107 Commits

Author SHA1 Message Date
Chaoguang Lin a641429d63 Add an enum for implementation type and use for registeration 2020-07-27 12:29: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 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 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
Chaoguang Lin caebc5b6d0 Fix typo 2020-07-06 16:42:42 -07:00
Chaoguang Lin a43afb9d97 Merge remote-tracking branch 'upstream/master' into add-management-api-into-special-key-space 2020-07-06 15:47:00 -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
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
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
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
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 84c0856897 add management api to special-key-space getrange 2020-06-22 13:52:48 -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 c2a5b36eda Change to initialization list for SpecialKeySpace constructor 2020-06-16 19:27:21 -07:00
Chaoguang Lin 5bc2e2e595 update comments, make isAsync() virtual, remove unused code 2020-06-12 10:12:44 -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 bf62ef7c3e Add dd-stats into special-key-space 2020-05-18 10:38:23 -07:00
Chaoguang Lin 47f4f7085e update special-key-space comments 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 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 03e395b353 Rename pks to sks, as the shorthand for special-key-space in header file 2020-05-15 16:34:42 -07:00
Andrew Noyes ce0e03a800 Add virtual destructor to SpecialKeyRangeBaseImpl 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 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 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 535efa0c4c Add assertion to make sure new registered range is not overlapping with existing ones 2020-04-08 14:27:05 -07:00
chaoguang 4a9658d6b8 fix issues according to andrew's comments 2020-04-08 13:38:12 -07:00
chaoguang ff92336887 refine code 2020-04-07 10:25:26 -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 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 5b6ae4da7f A simple intergration to put conflictingKeys into special-key-space 2020-04-03 16:11:20 -07:00
chaoguang 81dd97d27f Change special keyspace to \xff\xff, \xff\xff\xff 2020-03-31 19:06:45 -07:00
chaoguang 1d790346c9 refine part of the code 2020-03-31 01:44:02 -07:00
chaoguang 37ca0bf7e2 add code to handle the three flags in RangeResultRef 2020-03-30 23:27:09 -07:00
chaoguang 457f95156d Change name from private-key-space to special-key-space 2020-03-03 18:35:24 -08:00