21309 Commits

Author SHA1 Message Date
Jon Fu
1d3a129070 fix compile errors from merge 2022-07-22 16:09:08 -07:00
Jon Fu
43c7146d86 Merge branch 'feature-tenant-groups' of github.com:sfc-gh-ajbeamon/foundationdb into jfu-tenant-rename-special-keys 2022-07-22 15:21:13 -07:00
A.J. Beamon
f6e3019a10 Merge branch 'main' into feature-tenant-groups 2022-07-22 14:09:55 -07:00
A.J. Beamon
9459d0c6ca
Merge pull request #7661 from sfc-gh-ajbeamon/tenant-metadata-key-backed-types
Use key-backed types for tenants
2022-07-22 14:01:45 -07:00
Jon Fu
818a9fb057 fix some test logic to account for some missing error handling in special keys and txn case 2022-07-22 13:24:59 -07:00
A.J. Beamon
0d7d775547 Remove unused function 2022-07-22 12:52:00 -07:00
Andrew Noyes
79f60691e9
Don't pass non-pod to variadic function (#7668)
fdbserver/storageserver.actor.cpp:654:24: error: cannot pass object of non-trivial type 'const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char>>') through variadic function; call will abort at runtime [-Wnon-pod-varargs]

Just use fmt instead
2022-07-22 12:51:44 -07:00
A.J. Beamon
b735bf8eb0 Add comments to deleteTenantTransaction. Fetch the tenant ID from the first transaction in deleteTransaction to use on subsequent retries. 2022-07-22 12:34:27 -07:00
A.J. Beamon
193a0dbf4f Some test fixes 2022-07-22 12:28:42 -07:00
Lukas Joswiak
7fb427f4ec Update fdbserver/GrvProxyServer.actor.cpp
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
2022-07-22 10:37:29 -07:00
Lukas Joswiak
a26344b877 Update fdbserver/GrvProxyServer.actor.cpp
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
2022-07-22 10:37:29 -07:00
Lukas Joswiak
8395c6cf3f Fix Tuple error 2022-07-22 10:37:29 -07:00
Lukas Joswiak
5fa8e3f7d0 Simplify refresh condition 2022-07-22 10:37:29 -07:00
Lukas Joswiak
703aa1d279 Mess with timeout values 2022-07-22 10:37:29 -07:00
Lukas Joswiak
6c17ca038a Add delay to allow for global config sync time 2022-07-22 10:37:29 -07:00
Lukas Joswiak
40d403ed5f Reduce global configuration system key reads from proxy
Clients now poll the proxy for the latest global config for a specific
version. The proxy now periodically requests the latest global
configuration data and stores it in memory, enabling it to respond
immediately to clients with the appropriate version.
2022-07-22 10:37:29 -07:00
Lukas Joswiak
56dfdbda83 Add migration timeout 2022-07-22 10:37:29 -07:00
Lukas Joswiak
c32f3f8746 Update fdbclient/include/fdbclient/CommitProxyInterface.h
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
2022-07-22 10:37:29 -07:00
Lukas Joswiak
e024db85a0 Update fdbserver/GrvProxyServer.actor.cpp
Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
2022-07-22 10:37:29 -07:00
Lukas Joswiak
7a48a53778 Perform migration automatically on proxy boot 2022-07-22 10:37:29 -07:00
Lukas Joswiak
2e99d5f6cc Batch global config refresh requests 2022-07-22 10:37:29 -07:00
Lukas Joswiak
c33e44b0f4 Proxy GlobalConfig reads through GRV proxies
Clients should avoid reading system keys unless authorized. Under global
config, each client reads from the system keyspace to check for new
global config keys. This commit moves these reads to a server role (the
GRV proxies) and sends the results back to GlobalConfig for an in-memory
update.
2022-07-22 10:37:29 -07:00
He Liu
7a8be255cd
Ss shard management (#7340)
* Storage server shard management with physical shards.

* Cleanup.

* Resolved comments.

* Added `UnlimintedCommitBytes`.

Co-authored-by: He Liu <heliu@apple.com>
2022-07-22 09:30:44 -07:00
Jingyu Zhou
c759357687
Merge pull request #7662 from xis19/databaseContext
Add TraceEvent to the construction/destruction of DatabaseContext
2022-07-22 09:29:56 -07:00
A.J. Beamon
237081905d Add support for tenant groups 2022-07-22 09:27:31 -07:00
Xiaoge Su
25d9fa856c fixup! Update code per comments 2022-07-21 23:14:31 -07:00
Zhe Wu
5441eb4610 Add CommitDebug event after Commit Proxy reporting committed version to master 2022-07-21 21:29:53 -07:00
A.J. Beamon
17146c484b Use key-backed types for tenants. Add a tenant state field that will be used in upcoming work. Some other tenant related refactoring. 2022-07-21 20:33:28 -07:00
Xiaoge Su
32b4968835 Add TraceEvent to the construction/destruction of DatabaseContext
This is to figure out why huge databaseLogger related TraceEvents
generated after 7.1 released.
2022-07-21 19:38:59 -07:00
Andrew Noyes
89141d4b3a
Validate subrange reads in simulation (#7597)
* Add extra validation to special key space reads in simulation

* Fix bugs turned up by validating subrange reads

* Change to validateSpecialSubrangeRead

It is in general not safe to expect that a read from the special key
space returns the same results if performed again, since the
transaction may be being modified concurrently.

* Add comment

* Add comment
2022-07-21 14:42:08 -07:00
He Liu
257bab7311
Allow read range on null shard (#7654)
* Fixed ShardedRocks unit test.

* Removed `UNIT` from noSim/ShardedRocksDBTest.toml.

Co-authored-by: He Liu <heliu@apple.com>
2022-07-21 13:59:49 -07:00
Zhe Wu
bd99f4fa3b Log tlog initialization 2022-07-21 13:54:44 -07:00
Andrew Noyes
45c8a4e09d
Build fixes/improvements for sanitizers (#7657)
* Don't build fdb c shim with ubsan

This avoids duplicate symbols when linking. It doesn't really make sense
to assemble files with -fsanitize=undefined anyway, since it won't
insert instrumentation.

* Consolidate boost_asan with boost_target
2022-07-21 12:43:38 -07:00
Trevor Clinkenbeard
9d63a859b0
Merge pull request #7443 from sfc-gh-xwang/readaware
[Read-aware DD] Use KeyRangeStorageMetrics instead of StorageMetrics
2022-07-21 12:37:51 -07:00
A.J. Beamon
410f27412b
Merge pull request #7620 from sfc-gh-ajbeamon/make-tuple
Add a Tuple::makeTuple function to easily construct a tuple
2022-07-20 17:09:10 -07:00
A.J. Beamon
190711ccd8
Merge pull request #7622 from sfc-gh-ajbeamon/eat-and-connection-string-changes
Add some helper functions to ClusterConnectionString and an improvement to StringRef.eat
2022-07-20 16:10:24 -07:00
Xiaoxi Wang
cd13356964 solve review comments 2022-07-20 16:09:38 -07:00
A.J. Beamon
fee131f24d
Merge pull request #7591 from sfc-gh-ajbeamon/key-backed-types-range-read-more
Add support for returning a more flag from key backed types' range reads
2022-07-20 15:57:50 -07:00
A.J. Beamon
51204163df Some minor changes from code review 2022-07-20 15:29:34 -07:00
A.J. Beamon
4d036ae339
Merge pull request #7626 from sfc-gh-ajbeamon/tenant-metadata-change
Some changes to the tenant metadata
2022-07-20 14:50:00 -07:00
Ata E Husain Bohra
9a3e88df46
Fix ASAN build (#7629)
* Fix ASAN build

Description
  -diff-2: Fix Mac build issues
  -diff-1: Address review comments

Patch addresses the issue where ASAN build failed after introducing
BlobGranule compression.

Testing

ASAN build
2022-07-20 14:14:46 -07:00
A.J. Beamon
37b7666262 Add a comment to name the fold expression syntax in makeTuple. This should make it easier to look up for those unfamiliar with the syntax. 2022-07-20 13:57:55 -07:00
Jon Fu
762c01d567 add error check for overlap 2022-07-20 13:43:13 -07:00
Zhe Wu
aa2740e21e Increase AllTags field length in TLogReady 2022-07-20 13:17:21 -07:00
A.J. Beamon
f6a47a18e9 Use a constexpr check for deserialization (from code review) 2022-07-20 13:01:36 -07:00
Josh Slocum
c066597af1
Merge pull request #7644 from sfc-gh-jslocum/granule_merging_converge
Granule merging converge
2022-07-20 15:00:19 -05:00
Trevor Clinkenbeard
1020d5b1ad
Merge pull request #7641 from harikb/upstream-clean
Backups, Azure, Issue 7570: Check existance of container before creation attempt
2022-07-20 12:43:54 -07:00
Josh Slocum
2a0381f44d
Merge pull request #7603 from sfc-gh-ahusain/ahusain-fix-test
Fix snapshotFormatUnitTest infinite loop
2022-07-20 14:17:39 -05:00
Josh Slocum
8ccf18f35c cleanup 2022-07-20 12:52:21 -05:00
Josh Slocum
316b7a5344 Merge branch 'main' into granule_merging_converge 2022-07-20 12:13:48 -05:00