Commit Graph

10411 Commits

Author SHA1 Message Date
Steve Atherton e8626724f9 More refactor of Redwood metrics. Added per-level BTree stats. Added Pager total physical disk reads/writes, and uncacheable read hit/miss counts. Added logging to TraceEvents. 2020-05-16 02:51:57 -07:00
Steve Atherton 7cc8e281f2 Accidental override on non inherited function, which strangely only broke the Windows build. 2020-05-15 06:47:24 -07:00
Steve Atherton 0538edf7e7 Lazy / deferred subtree deletion had a few different names in the code, normalized everything to LazyClear. Removed accidental printfs. 2020-05-15 02:15:02 -07:00
Steve Atherton 32f4639168 Refactored page remap removal. The process is now called remap cleanup, does batches of remap entries in parallel, coalesces remaps of the same page ID to skip unnecessary writes, and has some knobs for controlling it. FIFOQueue now has peek() to support remap cleanup version lag limits. Added counters for remap cleanup and lazy subtree deletion. Refactored Redwood counters, normalized and grouped their names. 2020-05-15 02:10:51 -07:00
Steve Atherton f51c1b352e Applied clang-format. 2020-05-14 01:57:54 -07:00
Steve Atherton 421a6581c1 Lazy delete cycles now run more often and not just when the btree is having mutations actively merged into it. Specifically, it is launched upon recovery, then stopped and relaunched after every commit. This will make better use of I/O in between calls to commit(). Also added knobs to control lazy delete cycle parallelism and work limits. 2020-05-13 02:27:03 -07:00
Steve Atherton 3aef977af4 Removed a duplicative mutation buffer lookup when merging mutation buffer into internal page. 2020-05-12 20:48:31 -07:00
Evan Tschannen fabd851366
Merge pull request #3125 from etschannen/master
Fixed a crash related to destruction order in data distribution
2020-05-10 23:41:23 -07:00
Evan Tschannen 48b1b20f67 Fixed a crash related to destruction order in data distribution 2020-05-10 23:14:19 -07:00
Evan Tschannen 15ac282422
Merge pull request #3124 from etschannen/master
Merge release 6.2 into master
2020-05-10 23:12:14 -07:00
Evan Tschannen f17f00fdd5 Merge branch 'release-6.2'
# Conflicts:
#	documentation/sphinx/source/release-notes.rst
2020-05-10 22:33:38 -07:00
Evan Tschannen a04e79b267
Merge pull request #3123 from etschannen/release-6.2
Commits could stall on the proxy because of inaccurate compute estimates
2020-05-10 20:12:52 -07:00
Meng Xu 67ead730cc
Merge pull request #3122 from sfc-gh-anoyes/anoyes/fix-get-exception-contract
Allow error_code_special_keys_no_module_found
2020-05-10 18:15:11 -07:00
Evan Tschannen d0b414ddf2
Merge pull request #3121 from etschannen/master
Added a large random delay on failure detection
2020-05-10 17:59:51 -07:00
Evan Tschannen 68708f3f40 updated release notes 2020-05-10 17:55:32 -07:00
Evan Tschannen 9d1df2aa58 fix: the first CPU estimate could be wrong enough to cause stalls on a newly recruited proxy 2020-05-10 17:50:09 -07:00
Evan Tschannen 3eaa9d6397 fix: do not report datacenter version difference before both datacenters report a correct version 2020-05-10 17:49:09 -07:00
Evan Tschannen b1bd5ef83e
Merge pull request #3120 from satherton/feature-redwood
Redwood read concurrency limit, some knobs, and memory-only Pager mode.
2020-05-10 17:34:41 -07:00
Andrew Noyes 4dc458d93c Allow error_code_special_keys_no_module_found
When getting a special key and the relaxed option isn't set
2020-05-11 00:18:40 +00:00
Evan Tschannen 306eeb30e0 Merge branch 'master' of github.com:etschannen/foundationdb 2020-05-10 17:09:58 -07:00
Evan Tschannen 07111f0e41 add a large random delay on failure detection so that not all storage servers need to attempt to become the cluster controller 2020-05-10 17:09:33 -07:00
Steve Atherton 43f9e4dfad Implemented concurrent read limit in IKeyValueStore interface for Redwood. Added knobs for Redwood page size, concurrent read limit, and page fill factor. Changed commitSubtree() recursion back to use a vector and waitForAll() because it seems to be lower overhead than ActorCollection. 2020-05-10 16:13:22 -07:00
Evan Tschannen c6ff6454bf
Merge pull request #3119 from etschannen/master
Fixed a number of problems with monitorLeaderRemotely
2020-05-10 15:42:09 -07:00
Evan Tschannen 2ecea80539 removed unneeded debugging 2020-05-10 14:26:40 -07:00
Evan Tschannen 048201717c Fixed a number of problems with monitorLeaderRemotely 2020-05-10 14:20:50 -07:00
Steve Atherton ffbed1d84c Use actor collection for subtree recursions. 2020-05-10 11:44:07 -07:00
Steve Atherton f306666e21 Added commonPrefixLength for StringRefs that takes a prefix skip length. 2020-05-10 04:24:11 -07:00
Steve Atherton 5bb5bd2fd5 Improvements to Redwood set benchmark to improve readability and limit commit sizes to a record count or byte limit. 2020-05-10 04:21:25 -07:00
Steve Atherton 2ed43ebdf7 Added a non-persistent, memory-only option to DWALPager. 2020-05-10 02:19:19 -07:00
Evan Tschannen 0957b33948
Merge pull request #3107 from etschannen/feature-fast-keyserver-decode
optimized decodeKeyServersValue on the proxy when loading all key ranges on startup
2020-05-09 18:05:29 -07:00
Evan Tschannen abbb01f7ac
Merge pull request #3109 from etschannen/master
revert strage class monitor leader because of correctness issues
2020-05-09 18:04:56 -07:00
Evan Tschannen 6fca885b9d revert strage class monitor leader because of correctness issues 2020-05-09 18:03:59 -07:00
Evan Tschannen f9518c3441
Merge pull request #3069 from alexmiller-apple/tls-connection-count
YOLO at reducing TLS connection count via doing monitorLeader on coordinators
2020-05-09 17:12:27 -07:00
Evan Tschannen 9d5e37f1a8 optimized decodeKeyServersValue on the proxy when loading all key ranges on startup 2020-05-09 16:54:35 -07:00
Evan Tschannen ebf141c84b
Merge pull request #3103 from etschannen/feature-optimize-ss
Refactored some actors in the storage server to improve performance
2020-05-09 16:35:06 -07:00
Meng Xu d9c5a0c559
Merge pull request #3095 from atn34/atn34/special-key-versioning
Add api versioning and opt-in cross-module reads to special key space
2020-05-09 16:21:02 -07:00
Evan Tschannen 54175c6619
Merge pull request #2961 from kaomakino/kaomakino/aarch64
aarch64 Linux port
2020-05-09 16:00:57 -07:00
Evan Tschannen dbdf6ddbd7 removed an unnecessary try/catch 2020-05-09 16:00:36 -07:00
Andrew Noyes 8bd5dcaff8 Merge branch 'master' into atn34/special-key-versioning 2020-05-09 15:34:20 -07:00
Evan Tschannen f298436db7 made the style consistent 2020-05-09 15:17:22 -07:00
Kao Makino c2e80fe47b Linux aarch64 port 2020-05-09 22:14:03 +00:00
Evan Tschannen d497910fa2 fixed merge conflict 2020-05-09 13:34:51 -07:00
Evan Tschannen 69affebe40 merge master 2020-05-09 13:29:18 -07:00
Evan Tschannen 2dfae85dc7 the delay for reads is about 15% of the total cost of the read, so start multiple reads with the same delay 2020-05-09 13:26:38 -07:00
Evan Tschannen 8ee09af8bc
Merge pull request #2942 from ajbeamon/transaction-tagging
Transaction tagging
2020-05-09 12:48:13 -07:00
A.J. Beamon 02307ba7b6 Merge branch 'master' into transaction-tagging
# Conflicts:
#	fdbclient/DatabaseContext.h
2020-05-09 07:50:29 -07:00
Steve Atherton e4006c4b63 Apply clang-format. 2020-05-09 02:21:26 -07:00
Evan Tschannen a4fc593a3a refactored some actors in the storage server to improve performance 2020-05-08 21:08:52 -07:00
Andrew Noyes 4cbf7b0fc0 Fix typo 2020-05-09 03:12:55 +00:00
Andrew Noyes c9205a5e1e Explain module 2020-05-09 03:03:53 +00:00