9654 Commits

Author SHA1 Message Date
A.J. Beamon
c4b0f6eaae
Add an internal C API to support connection to a cluster using a connection string (#7438)
* Add an internal C API to support memory connection records

* Track shared state in the client using a unique and immutable cluster ID from the cluster

* Add missing code to store the clusterId in the database state object

* Update some arguments to pass by const&
2022-07-07 10:12:49 +02:00
Yao Xiao
f98d5ae9e9
[ShardedRocksDB] 5/N Generate and persist metadata for range mapping. (#7408) 2022-07-06 15:57:46 -07:00
Jon Fu
df1f108b78 Merge branch 'main' of github.com:apple/foundationdb into jfu-tenant-rename 2022-07-06 14:10:22 -07:00
Dan Lambright
bb99b59deb
Change VersionVectorTagUpdates to LatencySample (#7531) 2022-07-06 16:48:15 -04:00
A.J. Beamon
1e8225a19e
Merge pull request #7511 from sfc-gh-ajbeamon/add-subrange-support-to-tenant-special-keys
Update the tenant special keys submodule to support multiple sub-ranges
2022-07-06 10:33:14 -07:00
Junhyun Shim
db449b80f7
Authz JWKS (#7519)
* Add JsonWebKeySet parser/stringifier

* Update header directory

* Make JWKS parser correctness clean for OpenSSL 1.x

Add RSA keygen support

* Make JWKS parser correctness clean for OpenSSL 3.x

+extend unique_ptr for scoped destruction of OpenSSL objects

* Use PKey::{sign|verify}() in TokenSign

* Apply AutoCPointer to MkCert

* Apply Clang format

* JWKS::toStringRef() returns StringRef > Optional<StringRef>

* Fix Mac/Windows build error

* Fix incorrect fix of Mac build

* Fix filename in license comment for AutoCPointer.h

* Refactor complex C macros into function templates
2022-07-05 10:13:09 +02:00
Steve Atherton
c417df83f3
Merge pull request #7515 from sfc-gh-ajbeamon/more-generic-key-backed-types
Update key backed types to support multiple transaction types and different codecs
2022-07-01 14:37:02 -07:00
Josh Slocum
08ca0a9883
Merge pull request #7509 from sfc-gh-jslocum/cf_memory_perf
Change Feed Reading CPU optimization
2022-07-01 14:06:39 -05:00
Dan Lambright
ea42e9f59c
Do not delay sending empty messages twice (#7462) 2022-07-01 14:22:53 -04:00
A.J. Beamon
9e659b62ee Fix idempotent spelling 2022-07-01 10:34:10 -07:00
A.J. Beamon
62683b4140 Update key backed types to support a templated Codec. This required updating the existing Codec to convert from objects into byte strings through tuples. 2022-07-01 10:11:02 -07:00
A.J. Beamon
1dc78a3b3f Add support for different transaction types (Reference<ITransaction>, Reference<ReadYourWritesTransaction>) to key backed types 2022-07-01 10:02:39 -07:00
A.J. Beamon
aff21f062f Fix indentation and refactor prefix construction to be in forward order 2022-07-01 09:50:05 -07:00
A.J. Beamon
2f67328a0c Update the tenant special keys submodule to support multiple sub-ranges. This will enable future work that allows configuring tenants at the same time as creating them. 2022-06-30 15:03:37 -07:00
Josh Slocum
f943efb3b1 Change Feed Reading CPU optimization 2022-06-30 15:32:41 -05:00
Josh Slocum
48bcf6eaba
parameterizing min split size instead of hardcoding it to min_shard_bytes (#7404) 2022-06-30 12:28:22 -07:00
Xiaoxi Wang
e85e7794c2
Merge pull request #7501 from sfc-gh-xwang/features/ppw-pause-state
Add timeout handler for storage wiggler status fetcher
2022-06-30 11:23:29 -07:00
Jingyu Zhou
d60cab788e
Merge pull request #7502 from jzhou77/main
Add pipelining for secondary queries in index prefetch
2022-06-30 10:27:29 -07:00
A.J. Beamon
76a147a104
Merge pull request #7496 from sfc-gh-ajbeamon/refactor-tenant-map-encoding
Refactor how tenant map entries are encoded and decoded
2022-06-30 09:48:38 -07:00
Jingyu Zhou
4910f69f60
Update fdbserver/storageserver.actor.cpp
Co-authored-by: Hao Fu <77984096+hfu94@users.noreply.github.com>
2022-06-30 09:19:19 -07:00
Dan Lambright
98b18e3a18
Remove code obsoleted by commit c48d5690 (#7499) 2022-06-30 12:16:23 -04:00
Jingyu Zhou
467642ac7f Remove semicolons 2022-06-30 09:12:58 -07:00
Xiaoxi Wang
e69604be42 Merge branch 'main' of https://github.com/apple/foundationdb into features/ppw-pause-state 2022-06-30 09:01:29 -07:00
Xiaoxi Wang
0beaf3bb93
Merge pull request #7504 from sfc-gh-tclinkenbeard/monitor-client-rates
Make GlobalTagThrottlerTesting::monitorClientRates more lenient
2022-06-30 09:00:22 -07:00
Markus Pilman
3d529fb145
Merge pull request #7055 from sfc-gh-tclinkenbeard/remove-tpcc
Remove TPC-C workloads
2022-06-30 09:49:09 -06:00
sfc-gh-tclinkenbeard
3e542b7ab1 Make GlobalTagThrottlerTesting::monitorClientRates less strict 2022-06-30 00:59:26 -07:00
Xiaoxi Wang
b51e9430a5 fix timeout buggify 2022-06-29 22:46:50 -07:00
sfc-gh-tclinkenbeard
72f5335460 Remove TPCC workloads 2022-06-29 22:31:56 -07:00
Jingyu Zhou
842004f3b3 Code clean-up 2022-06-29 21:29:41 -07:00
Jingyu Zhou
ba5e2ed72d Add batching for secondary queries in index prefetch
This is to reduce excessive load being issued concurrently, controlled by knob
MAX_PARALLEL_QUICK_GET_VALUE.
2022-06-29 21:17:11 -07:00
Xiaoxi Wang
1b0780398f Merge branch 'main' of https://github.com/apple/foundationdb into features/ppw-pause-state 2022-06-29 21:03:47 -07:00
Jingyu Zhou
da26a4c373 Issue secondary query in parallel for GetMappedKeyValues
In case the subquery is a local miss, it becomes a remote call. Then such an
optimization can significantly reduce latency.
2022-06-29 17:45:10 -07:00
Xiaoxi Wang
570dfd6760 add timeout handler 2022-06-29 15:30:37 -07:00
Yi Wu
364644673f
Support TLog encryption in commit proxy (#6942)
This PR add support for TLog encryption through commit proxy. The encryption is done on per-mutation basis. As CP writes mutations to TLog, it inserts encryption header alongside encrypted mutations. Storage server (and other consumers of TLog such as storage cache and backup worker) decrypts the mutations as they peek TLog.
2022-06-29 14:21:05 -07:00
Jon Fu
5e7bb0aa21 Merge branch 'main' of github.com:apple/foundationdb into jfu-tenant-rename 2022-06-29 13:20:19 -07:00
Xiaoxi Wang
c9366f8b01
Merge pull request #7491 from sfc-gh-xwang/bug/remotekv
Make g_simulator.datacenterDead() don't take spawn KV process into account
2022-06-29 11:43:27 -07:00
Chaoguang Lin
29f98f3654
Avoid duplicate snapshot on one process if it serves as multiple roles (#7294)
* Fix comments

* Add simulation value for SERVER_KNOBS->SNAP_CREATE_MAX_TIMEOUT

* A work version with correctness clean

* Remove unnecessay comments; debugging symbols

* Only check secondary address for coordinators, same as before

* Change the trace to SevError and remove the ASSERT(false)

* Remove TLogSnapRequest handling on TlogServer, which is changed to use WorkerSnapRequest

* Add retry for network failures

* Add retry limit for network failures; still allow duplicate snapshots on processes are both tlog and storage to avoid race

* Add retry limit as a knob and make backoff exponentail

* Add getDatabaseConfiguration(Transaction* tr)

* revert back to send request for each role once

* update some comments
2022-06-29 11:23:07 -07:00
A.J. Beamon
26b35c07cd Refactor how tenant map entries are encoded and decoded. Add a specific version to the encoding that matches the version used when this feature was introduced (and the only version in which it was used). 2022-06-29 10:58:58 -07:00
Trevor Clinkenbeard
db769667ae
Merge pull request #7112 from sfc-gh-tclinkenbeard/global-tag-throttling3
Create Global Tag Throttler
2022-06-29 10:06:00 -07:00
Xiaoxi Wang
0054b8a754 Merge branch 'main' of https://github.com/apple/foundationdb into bug/remotekv 2022-06-28 23:41:25 -07:00
Xiaoxi Wang
c6ff556f06 fix bug by exclude the spawned kv process info when counting dead process; add method 2022-06-28 23:39:22 -07:00
sfc-gh-tclinkenbeard
2134fa9a0c Merge remote-tracking branch 'origin/main' into global-tag-throttling3 2022-06-28 19:51:41 -07:00
sfc-gh-tclinkenbeard
be9a2002c3 Merge remote-tracking branch 'origin/main' into fix-knob-typo 2022-06-28 15:58:18 -07:00
Yao Xiao
cc93dfd289
Add getStorageBytes. (#7485) 2022-06-28 14:37:26 -07:00
Jingyu Zhou
ec9c3cf05c Remove unused variables 2022-06-28 16:41:58 -04:00
Jon Fu
5fee5e1a73 add renameTenant back to TenantAPI after rebase 2022-06-28 11:54:03 -07:00
Jon Fu
c9065b50bb add extra assertion 2022-06-28 11:36:20 -07:00
Jon Fu
2f8c9c4afe check DB after rename in test workload 2022-06-28 11:36:20 -07:00
Jon Fu
9276c885a9 change workload to allow for any combination of renames and handle errors accordingly 2022-06-28 11:36:18 -07:00
Jon Fu
b491c9feb6 introduce renaming to tenant management workload 2022-06-28 11:35:57 -07:00