120 Commits

Author SHA1 Message Date
Ata E Husain Bohra
28e608e717
Encryption data at-rest db-config (#7929)
* Encryption data at-rest db-config

Description

 diff-1: Handle 'force' updates to encryption_at_rest db-config

Major changes proposed:
1. Introduce 'encryption_data_at_rest_mode" 'configure new'
option to enable Encryption data at-rest. The feature is disabled
by default.
2. The configuration is meant to be set at the time of database
creation, addition checks will be done to avoid updating the config
in subsequent PR.
3. DatabaseConfiguration validity check to account for "tenant_mode"
set to `required` if Encryption data at-rest is selected given
EncryptionDomain matches Tenant boundaries.

Testing

devCorrectness - 100K
2022-09-02 14:11:38 -07:00
Evan Tschannen
a9d3c9f9b3
Added throttling when a blob worker falls behind (#7751)
* throttle the cluster when blob workers fall behind

* do not throttle on blob workers if they are not enabled

* remove an unnecessary actor

* fixed a compile error

* fetch blob worker metrics at the same interval as the rate is updated, avoid fetching the complete blob worker list too frequently

* fixed another compilation bug

* added a 5 second delay before bw throttling to prevent false positives caused by the 100e6 version jump during recovery. Lower the throttling thresholds to react much quicker to bw lag.

* fixed a number of problems

* changed the minBlobVersionRequest to look at storage server versions since this will be a lot more efficient

* fix: do not let desired go backwards

* fix: track the version of notAtLatest changefeeds for throttling

* ratekeeper now throttled blob workers by estimating the transaction per second throughput of the blob workers

* added metrics for blob worker change feeds

* added a knob to disable bw throttling

* fixed the transaction options in blob manager
2022-08-12 13:15:56 -07:00
Xiaoge Su
0326d53965 Split proxy_memory_limit_exceeded to commit/grv specific exceptions
Currently GRV is reporting proxy_memory_limit_exceeded error which has
error message claiming Commit proxy failing. This split should remove
such confusion.
2022-08-12 00:45:57 -07:00
Jingyu Zhou
16519a9e5f Update status json doc with fetch_storage_wiggler_stats_timeout error 2022-07-24 15:24:21 -07:00
Jingyu Zhou
217ba24b6f Add rss_bytes to process memory and fix available_bytes calculation
Since memory is now limited with RSS size, add RSS size in status json for
reporting. Also change how available_bytes is calculated from:
  (available + virtual memory) * process_limit / machine_limit
to:
  (available memory) * process_limit / machine_limit
2022-06-07 16:44:14 -07:00
Sagar Vemuri
ebf11d5d48 Update schemas with the tenants information 2022-05-16 11:09:10 -07:00
Zhe Wang
6c9ff6ee5e
Add sharded rocksdb type (#6862)
* add-sharded-rocksdb-type

* address comments

Co-authored-by: Zhe Wang <zhewang@Zhes-MacBook-Pro.local>
2022-04-21 22:53:14 -04:00
Xiaoxi Wang
5d5dae9a0c update release note 2022-04-20 21:27:22 -07:00
He Liu
dd15489605 rename ssd-rocksdb-experimental as ssd-rocksdb-v1. 2022-03-29 10:53:38 -07:00
A.J. Beamon
72a34945ce Add the ability to disable tenants. Server processes verify the ID of tenants being read or written. 2022-03-06 21:54:21 -08:00
A.J. Beamon
ea273291c7 Add new tenant mode configuration field to status documentation 2022-03-06 21:54:21 -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
Neethu Haneesha Bingi
3ea7209013 Simulation changes to randomly wiggle with locality filter and review comments. 2021-09-30 10:00:33 -07:00
Neethu Haneesha Bingi
3e79299898 Locality filter support to perpetual storage wiggler feature. 2021-09-30 10:00:33 -07:00
Hari Bhaskaran
ee1056cacd Remove incorrect comment
As described in this comment, https://forums.foundationdb.org/t/questions-on-status-json/2843/3?u=harikb , removing the comment that will make reader think this is about RAM. No new comment is necessary since the key is already "disk"
2021-09-14 09:39:23 -07:00
Josh Slocum
9992a7b33f Added StorageMigrationType and cli commands 2021-09-14 09:55:41 -05:00
A.J. Beamon
67acb48208 Updated the status documentation to match the schema used to validate status. 2021-08-19 11:16:40 -07:00
Neethu Haneesha Bingi
66f2518405 exclude to work with any locality data match. 2021-06-23 18:03:27 -07:00
Xiaoxi Wang
454f9e9c89 update json schemas 2021-06-17 20:20:39 +00:00
Daniel Smith
ac92d84fce Update documentation 2021-06-08 14:36:26 -04:00
Josh Slocum
ce82c9653e Testing Storage Server implementation 2021-05-25 20:28:50 +00:00
Sreenath Bodagala
2fa80e7912 Address review comments 2021-05-19 22:04:43 +00:00
Sreenath Bodagala
622f43474a Expose "bounce impact" and Storage Server "version catch-up rate" metrics
Changes:

Schemas.cpp: Extend the JSON schema to report the new metrics that have
been added.

mr-status-json-schemas.rst.inc: Update the schema to reflect the changes
made to the JSON schema.

release-notes-700.rst: Add a note about the new metrics in "Status"
section.
2021-05-19 19:54:49 +00:00
Sreenath Bodagala
99f6032239 Report bounce impact info as part of cluster JSON object. 2021-05-13 16:47:05 +00:00
Sreenath Bodagala
160293bd54 Report bounce impact in fdbcli status
Changes:

Schemas.cpp: Extend the JSON schema to report whether the cluster is
bounceable and if not, report the reason for why it is not bounceable.

Status.actor.cpp: Extend recoveryStateStatusFetcher() to populate the
bounce related field(s).

mr-status-json-schemas.rst.inc: Update the schema to reflect the change
made in Schemas.cpp.

release-notes-700.rst: Add a note about the new status fields in "Status"
section.
2021-05-13 14:28:06 +00:00
Sreenath Bodagala
336a9bff66 Provide "time since last full recovery" in fdbcli status
Changes:

Schemas.cpp: Extend the JSON schema to include a new field that reports
the number of seconds since last full recovery.

Status.actor.cpp: Extend recoveryStateStatusFetcher() to populate the
new field that has been added to Schemas.cpp.

mr-status-json-schemas.rst.inc: Update the schema to reflect the change
made in Schemas.cpp.
2021-05-05 19:43:44 +00:00
Sreenath Bodagala
a9532c7e79 Expose CommitBatchingWindowSize metric to fdbcli status
Changes:

mr-status-json-schemas.rst.inc: Update schema to reflect the change made
to Schemas.cpp (to include statistics about CommitBatchingWindowSize).

release-notes-700.rst: Add a note about the new metric in the Status section.
2021-05-03 22:25:04 +00:00
Markus Pilman
340f012e1a
Merge pull request #4695 from sfc-gh-etschannen/fix-rewrite-bme
rewrote tlog recruitment logic so that it is deterministic
2021-04-27 10:19:25 -06:00
Evan Tschannen
f1559a2203 use the stateless process class instead of master or resolution in simulation because it is the recommended process class, and the others are not deterministic when recruited in a constrained process situation 2021-04-26 09:49:26 -07:00
Dan Lambright
715c98572c bit more documentation 2021-04-21 10:48:35 -04:00
Dan Lambright
cabf192f57 Respond to review comments 3/23 2021-04-06 13:05:09 -04:00
Dan Lambright
48a475366c Log latency metrics for batch GRV requests 2021-04-06 13:05:09 -04:00
Hao Fu
fb9632297e Add txnRejectedForQueuedTooLong in ProxyStats 2021-02-12 13:04:58 -08:00
A.J. Beamon
aaf0a9aa7b Merge branch 'release-6.3' into merge-release-6.3-into-master
# Conflicts:
#	build/docker-compose.yaml
#	cmake/ConfigureCompiler.cmake
#	fdbclient/FileBackupAgent.actor.cpp
#	fdbrpc/AsyncFileCached.actor.h
#	fdbrpc/IAsyncFile.h
#	fdbrpc/IRateControl.h
#	fdbrpc/simulator.h
#	fdbserver/KeyValueStoreSQLite.actor.cpp
#	fdbserver/storageserver.actor.cpp
#	fdbservice/ServiceBase.cpp
2021-02-08 12:58:34 -08:00
A.J. Beamon
67e783acf8 Merge branch 'release-6.2' into merge-release-6.2-into-release-6.3
# Conflicts:
#	cmake/CompileBoost.cmake
#	cmake/FDBComponents.cmake
#	fdbrpc/AsyncFileCached.actor.h
#	fdbrpc/simulator.h
#	fdbserver/KeyValueStoreSQLite.actor.cpp
#	fdbserver/Knobs.cpp
#	fdbserver/Knobs.h
#	fdbserver/storageserver.actor.cpp
#	flow/Knobs.h
#	flow/network.h
2021-02-08 09:20:28 -08:00
Evan Tschannen
b2ffdf47f0 added low priority reads to status 2021-02-03 13:24:34 -08:00
Xin Dong
944f30484a
Merge pull request #3759 from dongxinEric/misc/3739/expose-time-since-last-recovery
This resolves issue #3739 by exposing time since last full recovery.
2020-10-19 09:03:31 -07:00
Xin Dong
480fc82779 Resolve review comments 2020-09-25 16:58:54 -07:00
Xin Dong
a96d6f85c5 Removed redundant field number_of_old_generations_of_tlogs from status json 2020-09-24 09:44:51 -07:00
Xin Dong
77048c3d0f Handle possbile timeout when getting a read version. Updated documentation of the status json format 2020-09-23 13:50:59 -07:00
Young Liu
35bef73a1c Rename proxy to commit proxy 2020-09-10 17:44:15 -07:00
Young Liu
9564171463 Merge branch 'master' into grv-proxy 2020-08-24 22:45:01 -07:00
Young Liu
63b3612ad5 Merge master branch and resolve conflicts 2020-08-24 16:42:31 -07:00
XiaoxiWang
4e627691a9 add throttle objects into Schemas.cpp 2020-08-24 23:37:58 +00:00
XiaoxiWang
86b943f17a update documentation 2020-08-23 18:24:45 +00:00
Young Liu
d6a23a4d6b Resolve comments to make GRV proxy a separate process class 2020-08-06 00:01:57 -07:00
A.J. Beamon
b09dddc07e Merge branch 'release-6.2' into merge-release-6.2-into-release-6.3
# Conflicts:
#	cmake/ConfigureCompiler.cmake
#	documentation/sphinx/source/downloads.rst
#	fdbrpc/FlowTransport.actor.cpp
#	fdbrpc/fdbrpc.vcxproj
#	fdbserver/DataDistributionQueue.actor.cpp
#	fdbserver/Knobs.cpp
#	fdbserver/Knobs.h
#	fdbserver/LogSystemPeekCursor.actor.cpp
#	fdbserver/MasterProxyServer.actor.cpp
#	fdbserver/Status.actor.cpp
#	fdbserver/storageserver.actor.cpp
#	flow/flow.vcxproj
2020-07-10 15:06:34 -07:00
Evan Tschannen
8befb0829d
Merge pull request #3481 from ajbeamon/fix-dc-timeout-message
Add missing messages to schema and rename one to match later versions
2020-07-10 10:30:21 -07:00
A.J. Beamon
b51beead53 The backport of a change in later versions didn't include some updates to the schema and a change to the name of one of the messages. 2020-07-09 16:58:13 -07:00
A.J. Beamon
693595f4e5 Fix make build, fix GRV schema 2020-07-09 16:50:08 -07:00