foundationdb/fdbserver
Alex Miller 1eb3a70b96 Spill SharedTLog when there's more than one.
When switching between spill_type or log_version, a new instance of a
SharedTLog is created in the transaction log processes.  If this is done
in a saturated database, then doubling the amount of memory to hold
mutations in memory can cause TLogs to be uncomfortably close to the 8GB
OOM limit.

Instead, we now thread which UID of a SharedTLog is active, and the
other TLog spill out the majority of their mutations.

This is a backport of #2213 (fef89aa1) to release-6.2
2019-10-17 01:24:50 -07:00
..
sqlite prefetch btree cells in sqlite3BtreeMovetoUnpacked 2019-07-31 22:39:08 +00:00
workloads added the ability to configure satellite_logs by satellite location, this will overwrite the region configure if both are present 2019-10-14 18:30:15 -07:00
ApplyMetadataMutation.cpp Move code in ApplyMetadataMutation from .h to .cpp 2019-07-16 15:00:34 -07:00
ApplyMetadataMutation.h Move code in ApplyMetadataMutation from .h to .cpp 2019-07-16 15:00:34 -07:00
CMakeLists.txt Merge branch 'master' of https://github.com/apple/foundationdb into change-connection-file 2019-07-24 15:22:26 -07:00
ClusterController.actor.cpp one proxy or resolver with best fitness no longer prevents more proxies or resolvers from being recruited with good fitness 2019-10-14 18:32:17 -07:00
ClusterRecruitmentInterface.h A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
CompactMap.cpp Merge branch 'release-6.1' 2019-06-03 18:49:35 -07:00
ConflictSet.h remove snap v1 related code 2019-07-25 17:29:31 -07:00
CoordinatedState.actor.cpp ProtocolVersion type - second try 2019-06-18 17:55:27 -07:00
CoordinatedState.h Reverting changes from merge of master into release-5.2 (b25810711c). Note that we never intend to release master into release-5.2, but if we did we would need to revert this commit. 2018-03-06 10:15:04 -08:00
Coordination.actor.cpp add yieldedFutures to prevent slow tasks 2019-09-11 16:26:48 -07:00
CoordinationInterface.h Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
CoroFlow.actor.cpp A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
CoroFlow.h remove trailing whitespace from our copyright headers ; fixed formatting of python setup.py 2018-02-21 10:25:11 -08:00
DBCoreState.h Update fdbserver/DBCoreState.h 2019-07-12 18:17:30 -07:00
DataDistribution.actor.cpp Raised the data distribution priority of splitting shards above restoring fault tolerance to avoid hot write shards 2019-10-11 17:50:43 -07:00
DataDistribution.actor.h Raised the data distribution priority of splitting shards above restoring fault tolerance to avoid hot write shards 2019-10-11 17:50:43 -07:00
DataDistributionQueue.actor.cpp added a buggify + minor code cleanup 2019-10-11 18:31:43 -07:00
DataDistributionTracker.actor.cpp Raised the data distribution priority of splitting shards above restoring fault tolerance to avoid hot write shards 2019-10-11 17:50:43 -07:00
DataDistributorInterface.h snap v2: DD changes - snapshot orchestration logic 2019-07-24 15:36:28 -07:00
DeltaTree.h Removed use of the C "struct hack" as it is not valid C++. Replaced zero-length members with functions returning a pointer for arrays or a reference for single members. 2019-07-02 16:02:58 -07:00
DiskQueue.actor.cpp Fix some new usages of g_random 2019-05-23 09:23:27 -07:00
FDBExecHelper.actor.cpp Merge pull request #2042 from senthil-ram/snap_cli_fix 2019-08-30 13:40:38 -07:00
FDBExecHelper.actor.h Fix #2009 posix compliant args for snapshot binary 2019-08-30 12:54:09 -07:00
IDiskQueue.h Implemented Traceable for printable types 2019-04-05 13:12:19 -07:00
IKeyValueStore.h Address review comments. 2018-10-19 18:55:35 -07:00
IPager.h debug_printf_noop() was incorrectly defined as a function, which still has a runtime cost of argument evaluation. 2019-05-22 03:40:18 -07:00
IVersionedStore.h Checkpointing incomplete and correctness-breaking progress on adding single-version mode to VersionedBTree. 2019-04-29 17:00:29 -07:00
IndirectShadowPager.actor.cpp Merge branch 'master' of github.com:apple/foundationdb into feature-redwood 2019-05-21 23:49:27 -07:00
IndirectShadowPager.h Many bug fixes related to concurrent page operations and pager shutdown. 2018-11-06 19:31:16 -08:00
KeyValueStoreCompressTestData.actor.cpp Fix minor IDE build errors 2019-02-19 15:16:59 -08:00
KeyValueStoreMemory.actor.cpp throw away state if we ever read popped data from the disk queue adapter 2019-07-30 10:14:39 -07:00
KeyValueStoreSQLite.actor.cpp A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
Knobs.cpp Merge branch 'release-6.2' of github.com:apple/foundationdb into feature-share-mutations 2019-10-16 14:50:37 -07:00
Knobs.h Merge branch 'release-6.2' of github.com:apple/foundationdb into feature-share-mutations 2019-10-16 14:50:37 -07:00
LatencyBandConfig.cpp Remove trace-calls to printable (in non-workloads) 2019-04-05 13:12:19 -07:00
LatencyBandConfig.h re-enabled flat buffers, fixed the latencyBandConfig serialization 2019-07-27 17:48:24 -07:00
LeaderElection.actor.cpp Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
LeaderElection.h Remove --object-serializer flag from executables 2019-08-06 09:25:40 -07:00
LogProtocolMessage.h Replace & operator with variadic function 2018-12-28 11:33:42 -08:00
LogRouter.actor.cpp Add cleanupPeekTrackers to LogRouter 2019-09-12 16:27:39 -07:00
LogSystem.h the master checks the popped version of the txsTag before recovering the txnStateStore, to avoid restoring data that is later found to be popped 2019-08-05 17:01:48 -07:00
LogSystemConfig.h Use friend struct for serializable_traits 2019-07-31 16:51:35 -07:00
LogSystemDiskQueueAdapter.actor.cpp the master checks the popped version of the txsTag before recovering the txnStateStore, to avoid restoring data that is later found to be popped 2019-08-05 17:01:48 -07:00
LogSystemDiskQueueAdapter.h the master checks the popped version of the txsTag before recovering the txnStateStore, to avoid restoring data that is later found to be popped 2019-08-05 17:01:48 -07:00
LogSystemPeekCursor.actor.cpp When reloading one cursor in a merge cursor, top off the other cursors as well. 2019-09-12 16:22:28 -07:00
MasterInterface.h Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
MasterProxyServer.actor.cpp added a yield on the proxy to remove a slow task when processing large transactions 2019-10-16 14:31:59 -07:00
MemoryPager.actor.cpp fdbserver: fix some print/scan format warnings 2019-05-06 13:35:29 -07:00
MemoryPager.h Adjust all includes to be relative to the root. 2018-10-19 17:35:33 +00:00
MoveKeys.actor.cpp Move trace event after transaction commit 2019-09-24 21:18:28 -07:00
MoveKeys.actor.h Merge branch 'master' into merge-release-6.1-into-master 2019-07-30 17:40:15 -07:00
NetworkTest.h Compiling on clang again 2019-05-13 14:15:23 -07:00
OldTLogServer_4_6.actor.cpp Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
OldTLogServer_6_0.actor.cpp Spill SharedTLog when there's more than one. 2019-10-17 01:24:50 -07:00
Orderer.actor.h A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
PrefixTree.h Fixed several minor code issues 2019-01-24 14:43:12 -08:00
QuietDatabase.actor.cpp Merge branch 'master' of github.com:apple/foundationdb 2019-07-30 16:55:56 -07:00
QuietDatabase.h snap v2: worker and other helper related changes 2019-07-24 15:36:28 -07:00
Ratekeeper.actor.cpp the include and exclude commands do not need to set the moveKeysLockOwnerKey, which will kill the data distribution algorithm 2019-09-27 18:33:56 -07:00
RatekeeperInterface.h Compiling on clang again 2019-05-13 14:15:23 -07:00
RecoveryState.h fix: kill all tlogs in one region prevents the remote logs from recovering in that region, do not allow that to prevent us from configuring usable_regions=1. 2018-07-05 00:08:51 -07:00
Resolver.actor.cpp A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
ResolverInterface.h Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
Restore.actor.cpp Add a random UID to TransactionMetrics in case a client opens multiple connections and also a field to indicate whether the connection is internal. Convert some of the metrics to our Counter object instead of running totals. 2019-07-08 14:01:04 -07:00
RestoreInterface.h A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
ServerDBInfo.h the cluster controller caches the serialization of serverDBInfo, to avoid regenerating it many times 2019-09-10 14:27:22 -07:00
SimulatedCluster.actor.cpp added the ability to configure satellite_logs by satellite location, this will overwrite the region configure if both are present 2019-10-14 18:30:15 -07:00
SimulatedCluster.h Address review comments and minor fixes 2019-05-28 22:07:46 -07:00
SkipList.cpp Merge branch 'master' into thread-safe-random-number-generation 2019-05-23 08:35:47 -07:00
Status.actor.cpp Merge pull request #2202 from etschannen/feature-share-mutations 2019-10-16 20:28:39 -07:00
Status.h the cluster controller caches the serialization of serverDBInfo, to avoid regenerating it many times 2019-09-10 14:27:22 -07:00
StorageMetrics.actor.h Send bytes input rate to DD. 2019-07-25 16:27:32 -07:00
StorageMetrics.h Adjust all includes to be relative to the root. 2018-10-19 17:35:33 +00:00
TLogInterface.h do not copy locality in the tlog interface constructor 2019-09-12 14:20:26 -07:00
TLogServer.actor.cpp Spill SharedTLog when there's more than one. 2019-10-17 01:24:50 -07:00
TagPartitionedLogSystem.actor.cpp Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
TesterInterface.actor.h Merge pull request #2045 from atn34/disallow-scalar-network-messages 2019-08-30 13:38:54 -07:00
VFSAsync.cpp A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
VersionedBTree.actor.cpp Merge remote-tracking branch 'upstream/master' into flowlock-api 2019-07-03 20:44:15 -07:00
WaitFailure.actor.cpp A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
WaitFailure.h A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
WorkerInterface.actor.h Spill SharedTLog when there's more than one. 2019-10-17 01:24:50 -07:00
fdbserver.actor.cpp Update fdbserver/fdbserver.actor.cpp 2019-09-13 15:10:24 -07:00
fdbserver.vcxproj Merge branch 'master' of https://github.com/apple/foundationdb into change-connection-file 2019-07-24 15:22:26 -07:00
fdbserver.vcxproj.filters Merge branch 'master' of https://github.com/apple/foundationdb into change-connection-file 2019-06-20 19:11:29 -07:00
local.mk Gperftools Profiling fix. 2019-04-01 14:42:18 -07:00
masterserver.actor.cpp the include and exclude commands do not need to set the moveKeysLockOwnerKey, which will kill the data distribution algorithm 2019-09-27 18:33:56 -07:00
networktest.actor.cpp A giant translation of TaskFooPriority -> TaskPriority::Foo 2019-06-25 02:47:35 -07:00
pubsub.actor.cpp Merge branch 'master' into thread-safe-random-number-generation 2019-05-23 08:35:47 -07:00
pubsub.h Use proper fwd decl in NativeAPI 2019-02-19 15:16:59 -08:00
storageserver.actor.cpp Added a buggify 2019-09-30 13:24:28 -07:00
template_fdb.h remove trailing whitespace from our copyright headers ; fixed formatting of python setup.py 2018-02-21 10:25:11 -08:00
tester.actor.cpp Replace scalar root types with proper messages 2019-08-28 14:40:50 -07:00
worker.actor.cpp Spill SharedTLog when there's more than one. 2019-10-17 01:24:50 -07:00