Commit Graph

743 Commits

Author SHA1 Message Date
Steve Atherton 8128f9f0b5 Merge branch 'main' of https://github.com/apple/foundationdb into redwood-rare-bugs 2022-03-10 11:28:09 -08:00
Steve Atherton 6cb5f86994 Added a boundary sample to the boundary verifier, which clear operations in the Redwood unit test will randomly make use of. Added cold start limit in BTree unit test to prevent test running too long, and a few other parameter changes. 2022-03-09 23:17:55 -08:00
Steve Atherton c76ba149b2 Removed unnecessary line as it does nothing, updated comment. 2022-03-09 20:28:14 -08:00
Steve Atherton 81d1e70435 Bug fix: Remap cleanup must delay freeing of unmapped destination pages until the oldest readable version passes the current latest readable version to prevent a very slow reader from reading a page after it has been recycled and reused. This is a very rare bug, seen in about 1 in 1 million runs of the Redwood unit test. 2022-03-09 19:08:00 -08:00
Steve Atherton 2ec15965ba No logic changes, just debugging output changes and variable renames for clarity. 2022-03-09 18:45:03 -08:00
Steve Atherton e96dc76aad Bug fix: When a BTree node is updated and is to the left of a completely removed sibling subtree the placeholder record providing its upper decode boundary could be lost because expectedUpperBound was not being set. 2022-03-08 03:56:29 -08:00
Steve Atherton d034d0c30f Bug fix in boundary verifier which caused false failures after a process restart when a commit was in progress because the verification map would contain changes that were rolled back. 2022-03-08 03:33:22 -08:00
Steve Atherton 77f06eedfd Use printable() on page boundary debug output. 2022-03-07 23:21:07 -08:00
Steve Atherton 8f844437da Avoid unused variable warning when debug output is not on. 2022-03-07 23:12:32 -08:00
Steve Atherton 9f690d5bd5 Added StringRef::same() which checks data pointers and lengths for match. Fixed a false negative (but not a bug) in boundariesNormal() and used same() to avoid string comparisons. 2022-03-07 22:44:24 -08:00
Steve Atherton 35df00eba2 Re-enable simulation-only boundary verification. 2022-03-07 22:31:29 -08:00
Steve Atherton 55c98a4287 Large refactor of redwood debug output to improve context and readability. 2022-03-07 22:30:20 -08:00
Steve Atherton 11f25bc08f Initialize decode boundary verifier to nullptr for restart tests, also disable check for now as the feature is not finished. 2022-03-04 17:20:31 -08:00
Jingyu Zhou 1a5bf25b5c Update code base to use fmt 8.1.1 2022-03-04 15:52:06 -08:00
Steve Atherton 9f1d4580e4 Added simulation-only verification of DeltaTree initialization boundaries between writes and reads over time. 2022-03-01 23:46:38 -08:00
Steve Atherton ee5030d06c Fixed memory "leak" where child node update tracker entries for freed internal pages were not removed so the map would just grow. 2022-02-28 00:16:10 -08:00
Steve Atherton 398374c7d7 Rename cacheSizeBytes to pageCacheBytes to match other tests. 2022-02-27 00:36:23 -08:00
Steve Atherton 73a81a86da Added Redwood metrics printing during set unit test using new generic repeatEvery() actor. 2022-02-26 23:37:30 -08:00
Steve Atherton 3a666610ad Tweaked Redwood unit test ops limits and added total record read count to prevent test instances that run too long. 2022-02-26 23:36:37 -08:00
Steve Atherton 6f16702042 Merge branch 'main' of https://github.com/apple/foundationdb into redwood-bug-fixes-and-memory-leak 2022-02-26 18:00:18 -08:00
Steve Atherton c122cf1ce0 Bug fix: Avoid having a local temporary Cursor destructed after the Reference<Page> containing its DecodeCache has been dropped by using the BTreeCursor's leaf cursor by reference. 2022-02-26 02:03:43 -08:00
Steve Atherton a47f481bae Bug fix, the extent cache used during recovery is not allowed to evict anything so it now uses a private Evictor with no size limit. 2022-02-25 19:21:11 -08:00
Andrew Noyes 276cf3a402
Fix minor bugs turned up by _GLIBCXX_DEBUG (#6375)
* Fix a benign bug turned up by _GLIBCXX_DEBUG

Just calling std::vector::operator[] with an out of bounds index at all
is technically undefined behavior.

* Fix compilation issue with _GLIBCXX_DEBUG

For some reason std::max with an initializer list isn't constexpr with
_GLIBCXX_DEBUG set
2022-02-25 13:50:41 -08:00
Steve Atherton a32c3a2891 Redwood now uses one global page cache eviction order and size limit for all page sizes, for real or virtual processes, and DecodeCache memory is counted against the global page cache budget. 2022-02-25 03:20:53 -08:00
A.J. Beamon 250a88e682 Enforce that trace event suppression calls happen first when using trace event call chaining. Fix various instances where we weren't following this requirement. 2022-02-24 12:25:52 -08:00
Steve Atherton a45c9ccce1 Revert "Added Redwood knob to reserve part of configured page cache size for Redwood page decode cache state."
This reverts commit 072bc86bb1.
2022-02-18 11:14:40 -08:00
Steve Atherton 17fe322bc4 Added near real-time tracking of Redwood page DecodeCache memory. 2022-02-18 03:26:05 -08:00
Steve Atherton 072bc86bb1 Added Redwood knob to reserve part of configured page cache size for Redwood page decode cache state. 2022-02-17 16:15:01 -08:00
Steve Atherton 42136bf808 Fixed memory leak (and minor performance bug) where RedwoodRecordRef::updateCache() would create the key copy to be placed in the cache but not actually place it into the real cache entry because the cache parameter was accepted by value. 2022-02-14 22:47:30 -08:00
Steve Atherton ef2ac9a095 Improvements in debug output for tracking page operations. 2022-01-18 19:42:08 -08:00
Steve Atherton bd12aacee4 Refactored main headers for Pager and BTree to use serialization framework to enable future evolution. 2022-01-11 22:04:27 -08:00
Steve Atherton 26c2229ba9 Added options to randomSeeks() in unit test to always get latest version and reinit cursor after each query to closer approximate overhead of using KVS interface. 2022-01-10 05:17:10 -08:00
Steve Atherton cab6f7f80d Removed unit test that doesn't do anything useful. 2022-01-09 06:20:47 -08:00
Steve Atherton 722465f7cd Improvements to encrypted related APIs and error handling. 2022-01-09 05:17:32 -08:00
Steve Atherton 13eae6656b Bug fix, BTree correctness unit test was omitting encryption mode in final reopen at the end of the test. 2022-01-07 04:50:03 -08:00
Steve Atherton 8efd22f9f2 Remove ReferenceCounted::construct() in favor of makeReference(). 2022-01-06 22:58:50 -08:00
Steve Atherton 7a08d59c22 Addressing PR discussions. Many renames. Changed encryption API to use new EncryptionKeyRef struct. Added a tree offset byte to BTreePage to allow for adding an additional field in the future. Added dummy definition for valgrind defined check. Added check that BTree pages are encrypted if encryption is enabled to prevent attack by replacing encrypted page with unencrypted page. 2022-01-06 22:27:22 -08:00
Steve Atherton 58783faeb5 Use shorter ::construct() syntax. 2022-01-06 04:45:05 -08:00
Steve Atherton d4bb27c05a Added static template ::construct(args...) on both ReferenceCounter<> classes as a more convenient way to construct references. 2022-01-06 03:01:29 -08:00
Steve Atherton 1ec8dd38b7 Refactored ArenaPage to include sub-header and payload offsets in the universal header to make them easier to work with and more future proof. Updated all ArenaPage comments. 2022-01-06 02:38:41 -08:00
Steve Atherton 7b4229118b TraceEvent::error() should always be called before the first detail(). 2021-12-27 19:32:58 -08:00
Steve Atherton 54de4caebd Fixed durability bug in new page read logic. During recovery, the backup header can only be used if the primary header read failed due to corruption, not (for example) io_timeout. 2021-12-27 19:06:03 -08:00
Steve Atherton 3ae2ee194c Bug fixes with encryption key provider initialization. 2021-12-27 16:21:18 -08:00
Steve Atherton 642541ba16 Added IEncryptionKeyProvider and first implementation to provide keys for dummy XOR encryption mode. Renamed some things for clarity. 2021-12-27 05:53:49 -08:00
Steve Atherton fda223e1bc Tweaked the types in QueueState and added comments. Bumped format versions due to this and previous changes. Added FIFOQueue comment block. Changed page id types in FIFOQueue from Logical to Physical to make it more clear what they are. 2021-12-26 22:52:54 -08:00
Steve Atherton f5610e5831 Fixed a valgrind-only errors caused by writing structures with intentionally-unused parts to disk and basing checksums on them. Added a valgrind check of ArenaPage payload to make finding issues like this more direct. 2021-12-26 22:05:52 -08:00
Steve Atherton 4f8e2a8e03 Bug fix: ArenaPage::subPage() wasn't decoding the page. Debug-only crash fix in FIFOQueue::Cursor::toString(). 2021-12-25 02:53:38 -08:00
Steve Atherton 68cf8e744f Fixed a potential page memory lifetime bug that was noticed by inspection, it has never been symptomatic. 2021-12-25 00:23:54 -08:00
Steve Atherton 7896c2979f Finished Redwood page API refactor and implemented dummy page encryption scheme with XOR, used randomly in simulation, to prove that pluggable encryption schemes fit in the design. 2021-12-25 00:22:36 -08:00
Steve Atherton d227a2ad37 Add warning if BTree selected encryption mode does not match file on disk. Limit BTree unit test cold restart count to prevent test from running too long. 2021-12-11 23:53:26 -08:00
Steve Atherton 702c26d8ab Merge branch 'master' of https://github.com/apple/foundationdb into redwood-header-changes 2021-12-11 19:41:51 -08:00
Steve Atherton 592006a537 Several bug fixes in ArenaPage pre and post read/write initialization. Several bug fixes in Queue and Page usage of ArenaPage. Bug fixes in page splitting logic involving incorrect space calculations within the new available page space. 2021-12-11 19:41:14 -08:00
Steve Atherton fc86ee147b Merge branch 'page-api-bug-fixes' into redwood-header-changes 2021-12-09 02:22:26 -08:00
Steve Atherton 4bc0cfe4af Many bug fixes in new page API and usages of it. 2021-12-09 02:21:50 -08:00
Steve Atherton 4f94515bf4 Merge branch 'master' of https://github.com/apple/foundationdb into redwood-header-changes
# Conflicts:
#	fdbserver/VersionedBTree.actor.cpp
#	fdbserver/art_impl.h
2021-12-05 14:45:15 -08:00
Steve Atherton d1ede0225b Initial commit of Redwood page header format and API to enable different page encodings to support encryption or different checksum types. 2021-12-05 13:39:35 -08:00
sfc-gh-tclinkenbeard 3b5d23ef88 Remove unnecessary temporary objects when appending to vector of pairs 2021-12-01 18:15:16 -08:00
Steve Atherton 43b3e05fd5 Merge branch 'master' of github.com:apple/foundationdb into delay-prioritized-eviction
# Conflicts:
#	fdbserver/VersionedBTree.actor.cpp
2021-11-29 16:14:43 -08:00
Steve Atherton 8216ad1e4e When a cached page is hit, if it is in the prioritized eviction order don't move it to the normal order. 2021-11-28 21:04:35 -08:00
Steve Atherton bed25f9571 Delay prioritized eviction of updated pages until after commit completes. 2021-11-28 21:03:44 -08:00
Steve Atherton 0f5535fce1 Remove explicit tryEvict(x) as it is unused and it is functionally replaced by prioritizeEviction(x). 2021-11-27 03:26:34 -08:00
sfc-gh-ngoyal 12e68da635
Merge pull request #6036 from sfc-gh-satherton/redwood-debug-sim-fixes
Test-only bug fixes in Redwood along with debug logging detail improvements.
2021-11-22 11:13:28 -08:00
sfc-gh-ngoyal e43ddb09ac
Merge pull request #6034 from sfc-gh-satherton/remap-window-fix
Bug fix:  incorrect remap cleanup window size in KeyValueStoreRedwood
2021-11-22 09:12:59 -08:00
Steve Atherton d2149631d5 Bug fix, the remap cleanup window was being initialized incorrectly in the Redwood KVS wrapper. 2021-11-19 21:40:09 -08:00
Steve Atherton 3901d60548 Test-only bug fixes in Redwood along with debug logging detail improvements. Added clearRemapQueue() to Pager to more cleanly and reliably expire all old data and process the remap queue, fixing a bug where with certain configuration parameters and a lot of data the DestructiveSanityCheck would fail because it would not run cleanup long enough. Added more parameters to performance/set unit test. 2021-11-19 01:00:14 -08:00
sfc-gh-tclinkenbeard 2613ec7561 Expand use of fmt to get rid of %ld usage 2021-11-17 17:03:32 -08:00
sfc-gh-tclinkenbeard 07349869d9 Use fmt to address -Wformat warnings 2021-11-17 14:45:48 -08:00
sfc-gh-tclinkenbeard 766a05d33c Merge remote-tracking branch 'origin/master' into add-format-warning 2021-11-17 12:14:01 -08:00
Steve Atherton 035e0d6e52
Merge branch 'master' into bit-flipping-workload 2021-11-16 14:42:22 -08:00
Steve Atherton 21c3c585ca Make file name parameter more user friendly in unit tests. 2021-11-16 04:03:11 -08:00
Steve Atherton 867999a41a Rename wrong_format_version to unsupported_format_version. 2021-11-16 03:25:54 -08:00
Steve Atherton 7b29804a5e Fix typo. 2021-11-16 02:30:57 -08:00
Steve Atherton c53f5aa110 Renamed redwood to redwood-1-experimental and file extension to .redwood-v1. 2021-11-16 02:15:22 -08:00
Steve Atherton 508429f30d
Redwood chunked file growth and low priority IO starvation prevention (#5936)
* Redwood files now growth in large page chunks controlled by a knob to reduce truncate() calls for expansion.   PriorityMultiLock has limit on consecutive same-priority lock release.  Increased Redwood max priority level to 3 for more separation at higher BTree levels.

* Simulation fix, don't mark certain IO timeout errors as injected unless the simulated process has been set to have an unreliable disk.

* Pager writes now truncate gradually upward, one chunk at a time, in response to writes, which wait on only the necessary truncate operations.   Increased buggified chunk size because truncate can be very slow in simulation.

* In simulation, ioTimeoutError() and ioDegradedOrTimeoutError() will wait until at least the target timeout interval past the point when simulation is sped up.

* PriorityMultiLock::toString() prints more info and is now public.

* Added queued time to PriorityMultiLock.

* Bug fix to handle when speedUpSimulation changes later than the configured time.

* Refactored mutation application in leaf nodes to do fewer comparisons and do in place value updates if the new value is the same size as the old value.

* Renamed updatingInPlace to updatingDeltaTree for clarity.  Inlined switchToLinearMerge() since it is only used in one place.

* Updated extendToCover to be more clear by passing in the old extension future as a parameter.  Fixed initialization warning.
2021-11-12 13:47:07 -08:00
sfc-gh-tclinkenbeard 62efeb6812 Merge remote-tracking branch 'origin/master' into add-format-warning 2021-11-12 11:50:36 -08:00
Steve Atherton 470896bdc4
Redwood inline same-size value updates (#5925)
* Refactored mutation application in leaf nodes to do fewer comparisons and do in place value updates if the new value is the same size as the old value.

* Renamed updatingInPlace to updatingDeltaTree for clarity.  Inlined switchToLinearMerge() since it is only used in one place.
2021-11-10 08:22:57 -08:00
Markus Pilman a246c1555d
Merge pull request #5931 from sfc-gh-mpilman/features/all-unit-tests-in-ci
Make sure unit tests are run often enough
2021-11-10 08:41:04 -07:00
Markus Pilman 7df059570a Make sure unit tests are run often enough 2021-11-08 15:43:32 -07:00
Steve Atherton d97d968176
Added KeyBackedObjectMap and KeyBackedObjectProperty classes for storing serializable objects in FDB (#5896)
* Cleaned up some lambda capture workaround since x=y captures weren't available when these classes were originally written.

* Added KeyBackedObjectMap and KeyBackObjectProperty, which work like KeyBackedMap and KeyBackedProperty but use ObjectWriter/Reader for Value serialization so that the type can evolve over time.

* Disabled unit tests which shouldn't run as part of random selection.
2021-11-08 13:04:53 -08:00
Steve Atherton cd5211c426 Merge branch 'redwood-inline-value-update' into redwood-header-changes 2021-11-07 20:43:46 -08:00
Steve Atherton 5c85555ea9 Refactored mutation application in leaf nodes to do fewer comparisons and do in place value updates if the new value is the same size as the old value. 2021-11-06 21:07:00 -07:00
Steve Atherton e69bc04a3b Change asserts that should never be disabled to unstoppable asserts since they have critical side effects. 2021-11-04 00:40:21 -07:00
Steve Atherton b4d69610ee Remove unused variable and more clearly explain out of range annotation in Redwood debug output. 2021-11-02 21:48:37 -07:00
Steve Atherton 84854761cb Change Redwood to use xxhash for checksums. 2021-11-02 21:47:31 -07:00
sfc-gh-tclinkenbeard ebcc023b6f Enable missing-field-initializers clang warning 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard 13bb7838aa Enable clang -Wformat warning 2021-10-30 21:07:38 -07:00
negoyal 1e7338b6c3 Merge branch 'master' into bit-flipping-workload 2021-10-28 14:24:49 -07:00
Steve Atherton 0794ebb7e8 Bump format versions for Pager and BTree as the multi-page BTree nodes are now stored in an incompatible way. 2021-10-26 22:17:55 -07:00
Steve Atherton b75edbda31 Merge branch 'master' of github.com:apple/foundationdb into RedwoodSuperpage
# Conflicts:
#	fdbserver/VersionedBTree.actor.cpp
2021-10-25 00:55:52 -07:00
sfc-gh-tclinkenbeard 9e06b6e6e3 Make IClosable interface const-correct 2021-10-18 13:40:47 -07:00
Daniel Smith 9713a14ef1 Reverse order of read type and debug ID args 2021-10-18 12:23:09 -04:00
Daniel Smith df53cc9580 Add an enum to IKeyValueStore to indicate the source/priority of the read 2021-10-15 14:35:59 -04:00
negoyal f913dfed97 Merge branch 'master' into bit-flipping-workload 2021-10-11 16:34:57 -07:00
Steve Atherton 0cce774325
Merge pull request #5732 from sfc-gh-satherton/kvs-write-version
Refactored how Redwood handles commit version
2021-10-09 20:26:52 -07:00
Steve Atherton abc14c4921 Redwood crash after shutdown which occurs if a queue page disk read was in progress during pager shutdown but the callback was fired after shutdown completed. 2021-10-09 02:04:23 -07:00
Steve Atherton 4722412e51 TEST macro logic fix, and moved wait on seek future to the conditional block where it isn't ready. 2021-10-08 08:47:49 -07:00
Steve Atherton fd02cbc08a Bug fix, atomic update case condition for BTree node builds resulting in 1 output node of the same 1-page size as the original was incorrect so atomic updates were never being done. 2021-10-08 00:41:09 -07:00
Steve Atherton 6981f6f5f2 Merge branch 'master' of github.com:apple/foundationdb into RedwoodSuperpage 2021-10-08 00:28:08 -07:00
Steve Atherton c1f05b82ba Added test coverage with comments for range read seek locking behavior. 2021-10-08 00:06:14 -07:00
Steve Atherton 8e149f5aa2 Merge branch 'master' of github.com:apple/foundationdb into RedwoodIO 2021-10-07 23:56:45 -07:00
Steve Atherton e358a4314d Added comment about not locking point reads. 2021-10-07 23:55:59 -07:00
Steve Atherton 45e19c8072 Merge branch 'master' of https://github.com/apple/foundationdb into kvs-write-version
# Conflicts:
#	fdbserver/VersionedBTree.actor.cpp
2021-10-07 20:48:21 -07:00
Steve Atherton 93f4e01258 Restored Redwood KVS internal auto-incremented version. 2021-10-06 13:15:50 -07:00
Steve Atherton b8508e40e9 Added random same-version zero-change commits to unit test. 2021-10-05 02:43:10 -07:00
Steve Atherton 5be84f1918 Initial Redwood post-create recovery version changed to -1, which means no commit has ever completed. Commits at the same version as the previous commit must have no changes and are no-ops. KeyValueStoreRedwood no longer advances the commit version automatically. 2021-10-05 02:20:42 -07:00
Steve Atherton 3a56b13989 Bug fix, range end seek in verification map was assuming that version 0 was lower than the minimum mutation version but that is no longer true due to recent changes in commit version behavior. 2021-10-03 22:11:33 -07:00
Steve Atherton 53ef574343 Many debug changes to Redwood unit test, adding and reformatting output. Errors are no longer counted and accumulated and instead ASSERT(false) is used for any failure so that --crash will end the test immediately. 2021-10-03 22:08:41 -07:00
Steve Atherton 02227209b3 Added explicit named TraceEvent .log() calls. 2021-09-30 10:06:20 -07:00
Steve Atherton d7a420a8d1 Added Redwood pager and BTree overview statistics to trace events logged on creation and recovery. Changed getStorageBytes() to treat internal space used by free list queues as reusable. 2021-09-29 21:01:21 -07:00
Fuheng Zhao 5efdc4964e update the readRange_impl locking logic 2021-09-24 14:43:41 -07:00
Fuheng Zhao a54db64fca lock for uncached cocurrent range reads 2021-09-23 15:26:10 -07:00
Fuheng Zhao c10077a30e put pointers at the front of funciton parameters 2021-09-22 10:21:11 -07:00
Fuheng Zhao 3e6bcd10e1 update the writePhysicalPage function 2021-09-20 13:22:36 -07:00
Fuheng Zhao 165f00dc90 commented concurrent lock 2021-09-20 12:40:34 -07:00
Fuheng Zhao 9afb1b997f update the write path 2021-09-20 12:23:28 -07:00
Fuheng Zhao de2afc6d9a conver to standalone in earlier stage to improve the throughput 2021-09-17 15:57:59 -07:00
Fuheng Zhao 3999b4dc90 let writePhysicalPag takes in standalone vectorRef, and see the effect on throughput 2021-09-17 10:49:48 -07:00
Xiaoge Su abf73047ca Enforce std:: specifier rather than using namespace 2021-09-16 19:40:28 -07:00
Fuheng Zhao a3c013c4da clean up debuging statement 2021-09-16 12:11:50 -07:00
Fuheng Zhao 15e8e3aba5 change back the storage engine type to random 2021-09-14 15:14:33 -07:00
Fuheng Zhao 320f9057c0 add TEST macro and always wait on the Future<Void> 2021-09-14 12:01:35 -07:00
Fuheng Zhao 6560d3af30 wait for future void 2021-09-13 14:32:29 -07:00
Fuheng Zhao 8d8592ef58 format 2021-09-13 14:01:22 -07:00
Fuheng Zhao f8f18c2cde check if reads are cached before locking 2021-09-13 09:59:23 -07:00
Steve Atherton b06cf7a328 Redwood commit versions are now FDB commit versions for storage instances. Redwood no longer makes internal commits during Pager or BTree recovery so that commit version is always set by the user. 2021-09-10 03:28:46 -07:00
Fuheng Zhao 1ec7880bf2 check if childPage is empty before preLoadPage 2021-09-08 16:16:06 -07:00
Fuheng Zhao 19e3132632 remove the extra space in these two files 2021-09-07 16:17:32 -07:00
Fuheng Zhao 9aab561f30 format 2021-09-07 16:13:13 -07:00
Fuheng Zhao feab3c4cf8 revert back changes in tracking cache size 2021-09-07 09:08:26 -07:00
Fuheng Zhao 82929fe40e check the thoroughput without the keeping the size 2021-09-03 10:24:21 -07:00
Fuheng Zhao 3bb9ba0687 check the single page vs multi page in upper readPage function call 2021-09-02 15:42:39 -07:00
Fuheng Zhao a94cb058e2 readPage and readMultiPage 2021-09-02 11:46:39 -07:00
Fuheng Zhao 16f864f2de need to debug segfault 2021-09-01 16:15:20 -07:00
negoyal 3b34423248 Merge branch 'master' into bit-flipping-workload 2021-08-31 12:14:51 -07:00
Fuheng Zhao 17f2ff4c1b avoid unnecessary function calls 2021-08-31 10:41:25 -07:00
Fuheng Zhao e5c1029244 merge with upstream master 2021-08-30 09:30:51 -07:00
Fuheng Zhao e0acce98ab format 2021-08-26 13:15:05 -07:00
Fuheng Zhao d8c257e263 resolve conflicts 2021-08-26 13:13:01 -07:00
Fuheng Zhao 8a19dac2f7 update the count and precetage to countLinear and percentageLinear 2021-08-26 13:08:11 -07:00
Steve Atherton be440ab954
Merge pull request #5260 from FuhengZhao/RedwoodHistogram
Redwood local histograms
2021-08-26 12:05:44 -07:00
Fuheng Zhao 67600d436e avoid yield 2021-08-26 09:51:07 -07:00
Fuheng Zhao bc9fd3ca96 Merge branch 'RedwoodHistogram' of https://github.com/FuhengZhao/foundationdb into RedwoodHistogram 2021-08-26 09:27:23 -07:00
Fuheng Zhao 7a043e72fb timing the log time for 33 histograms and change a void function to ACTOR 2021-08-26 09:27:00 -07:00
Steve Atherton 02c729d16b
Remove unused variable. 2021-08-25 16:03:00 -07:00
Steve Atherton ba63d3b7d7
Fix typo 2021-08-25 15:59:56 -07:00
Fuheng Zhao cee224f31b remove a neccessary cast from unsigned int to unsigned int 2021-08-25 15:46:08 -07:00
Fuheng Zhao 3b26cb5f99 add yield 2021-08-25 11:40:24 -07:00
Fuheng Zhao 5eb92ae65c reomve registry 2021-08-24 15:47:04 -07:00
Fuheng Zhao 57652a0cae Format 2021-08-24 10:00:24 -07:00
Fuheng Zhao b65a66fab7 log redwood histogram seperatly 2021-08-24 09:57:39 -07:00