Commit Graph

162 Commits

Author SHA1 Message Date
Syed Paymaan Raza
c3e7542cda Update end year in copyright header 2024-08-02 09:40:11 -07:00
hao fu
29161b2fda Revert matchIndex feature
It is not protocol compatible, revert it to avoid deployment issue.
Will have a new PR to have the feature if moving forward.
2023-04-17 09:39:45 -07:00
A.J. Beamon
0abb33a9a5 Add the ability to print messages or log trace events based on a transaction's result 2023-02-28 09:06:54 -08:00
sfc-gh-tclinkenbeard
398079db3a Merge remote-tracking branch 'origin/main' into expose-tag-throttled-duration 2023-02-20 17:54:06 -08:00
Josh Slocum
bfb3ffc509 added c and java apis for granule flush (#9412) 2023-02-20 10:28:11 -06:00
Josh Slocum
6c2fb13173 adding wait parameter to blobbify api (#9360)
* adding wait parameter to blobbify api

* formatting

* fixing comment style

* fixing bug and adding debugging

* adding blob ranges unit test

* testing both blobbify cases in cancel

* formatting

* switch to explicit blocking api instead of boolean flag

* remove comments

* format
2023-02-17 12:20:53 -06:00
sfc-gh-tclinkenbeard
09ad864eb5 Merge remote-tracking branch 'origin/main' into expose-tag-throttled-duration 2023-02-08 11:25:14 -08:00
Jon Fu
6493da877a add method to return idfuture 2023-01-25 12:45:35 -08:00
Jon Fu
808f8b9851 revert some changes to avoid race condition 2023-01-23 16:52:56 -08:00
Jon Fu
881cd0b996 use TenantName over StringRef 2023-01-20 16:42:19 -08:00
Jon Fu
2df3bfcdcf change threadsafe actors to use tenant object reference 2023-01-20 13:45:32 -08:00
Jon Fu
34a1765f42 Merge branch 'main' of github.com:apple/foundationdb into tenant-obj-fetch-id 2023-01-20 12:15:29 -08:00
A.J. Beamon
258198ca20 Merge branch 'main' into transactions-use-tenant-object
# Conflicts:
#	fdbclient/include/fdbclient/DatabaseContext.h
#	fdbserver/workloads/BulkLoadWithTenants.actor.cpp
2023-01-20 09:06:39 -08:00
Jon Fu
2882f86aac Merge branch 'main' of github.com:apple/foundationdb into tenant-obj-fetch-id 2023-01-19 14:42:29 -08:00
Jon Fu
fb4daf936d possible fix for memory errors 2023-01-19 14:42:11 -08:00
Jon Fu
6828523d97 addref to dbcontext 2023-01-13 11:18:47 -08:00
Jon Fu
34b7cead4c explicitly delref on tenant and optimize storing id in java/python 2023-01-13 11:13:45 -08:00
Jon Fu
13c5a9aede fix more merge issues 2023-01-13 11:03:19 -08:00
A.J. Beamon
e1d48d28bf Remove tenant name from the TenantInfo object 2023-01-13 08:58:15 -08:00
Jon Fu
12140f3c1d fix constructor initialization 2023-01-10 15:28:37 -08:00
Vaidas Gasiunas
f14f2ccc0d Introducing API function get_client_status; Exposing and testing database initialization state 2023-01-09 16:09:58 +01:00
Jon Fu
afb9a0c3e4 change fetch request and add partially completed API to get ID from tenant object 2022-12-21 11:38:51 -08:00
Jon Fu
f9eee540b5 initial commit to fetch tenant ID using new tenant class nativeAPI object 2022-12-08 12:41:27 -08:00
sfc-gh-tclinkenbeard
7fc85d86b4 Add fdb_transaction_get_tag_throttled_duration function to C bindings 2022-11-13 11:22:57 -08:00
Vaidas Gasiunas
18b852c4e4 Improving troubleshooting of stopping the FDB client thread (#8629)
* Upgrade tests: dump thread call stacks of the tester process if it fails to terminate

* ApiTester: log before and after stopping the network thread

* Catch and print exceptions in closeTraceFile; Close trace file at the end of MVC runNetwork

* Change trace event name for MVC runNetwork termination

Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>

Co-authored-by: A.J. Beamon <aj.beamon@snowflake.com>
2022-11-03 13:20:21 +01:00
sfc-gh-tclinkenbeard
32ae7bb529 Merge remote-tracking branch 'origin/main' into expose-txn-cost 2022-10-23 12:59:07 -07:00
Dennis Zhou
77e2e4a381 blob/c: tenant verifyBlobRange() c api 2022-10-17 11:42:26 -05:00
Dennis Zhou
9d38ddfabc blob/c: tenant listBlobbifiedRanges() c api 2022-10-17 11:42:07 -05:00
Dennis Zhou
a0246caebb blob/c: tenant (un)blobbify() c api 2022-10-17 11:41:44 -05:00
sfc-gh-tclinkenbeard
00eead1d8d Add fdb_transaction_get_total_cost to C bindings 2022-10-16 21:58:11 -07:00
Josh Slocum
f78eb8c778 Adding bg read amp metrics (#8275) 2022-09-22 16:31:27 -07:00
Lukas Joswiak
74ac617a34 Add support for changing coordinators to the configuration database
Configuration database data lives on the coordinators. When a change
coordinators command is issued, the data must be sent to the new
coordinators to keep the database consistent.
2022-09-13 16:53:54 -07:00
Dennis Zhou
28ac29476a blob: fix unblobbify calling blobbify 2022-09-09 11:29:52 -07:00
Vaidas Gasiunas
b6fb1034a9 Fix crashes on database create errors (#8115)
* ApiTester: enable access to database instances in workloads

* ApiTester: Inject database create errors

* Fix getClusterProtocol and database shared object initialization in case of database create errors

* Check deferred error in all Thread-Safe API calls returning a future

* ApiTester: disable injection of database create errors for tests with old versions
2022-09-08 09:21:51 +02:00
Josh Slocum
2251ae0fc2 Added summarize blob granules c api and tests (#8076)
* Added summarize blob granules c api and tests

* addressing review comments

* format
2022-09-02 17:08:51 +02:00
Dennis Zhou
80a0816157 flow: switch from hard coded to ApiVersion like ProtocolVersion (#8071)
* flow: add ApiVersion to replace hard coding api version

Instead of hard coding api value, let's rely on feature versions akin to
ProtocolVersion.

* ApiVersion: remove use of -1 for latest and use LATEST_VERSION
2022-09-02 09:28:13 +02:00
Josh Slocum
825a58880e Reworked multi-version client readBlobGranules to not get stuck on client version changes (#8017)
* Reworked multi-version client readBlobGranules to not get stuck on version changes

* Addressing review comments
2022-08-30 09:16:09 +02:00
Dennis Zhou
3d400cff64 blob: verifyBlobRange() c api 2022-08-16 13:29:23 -07:00
Dennis Zhou
1c2109dcbd blob: add rangeLimit to getBlobGranuleRanges() 2022-08-16 13:29:23 -07:00
Dennis Zhou
96f3dd67b0 blob: add listBlobbifiedRanges() api 2022-08-16 13:29:20 -07:00
Dennis Zhou
cbe9fba5e9 blob: (un)blobbifyRange() c api 2022-08-15 16:25:36 -07:00
A.J. Beamon
12545c7b84 Undo change that caused connection record reference to be created on application thread 2022-08-11 06:28:05 -07:00
Vaidas Gasiunas
79571dd2b4 Testing upgrades to a future version of FDB (#7780)
* Enable configuring the next future protocol version as the current protocol version in FDB client, fdbserver, and fdbcli

* Auto format python files used in upgrade tests

* Add a test for upgrading to a future FDB version

* Emphasize that the options for using future protocol version are intended for test purposes only

* Make the global variable for current protocol version visible only locally

* Refactirng to avoid using currentProtocolVersion() in static intialization

* Update go bindings
2022-08-08 17:29:49 +02:00
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
A.J. Beamon
4bafe77889 Some refactoring of tenant code:
* extract tenant management into its own file and namespace
* rename the tenant management workload source file
* extract tenant special keys functions to a separate file
* extract some helper functions to GenericTransactionHelper.h
* convert StringRef -> TenantNameRef
* move some TenantMapEntry implementation into the cpp file
* add some helper functions to decode/encode a tenant mode
2022-06-27 12:32:49 -07:00
Lukas Joswiak
75423a100c Move shared_ptr to save a reference increment and decrement 2022-06-22 14:50:17 -07:00
Lukas Joswiak
4f2b1807e4 Use shared_ptr to track initialization across threads 2022-06-22 14:50:17 -07:00
Lukas Joswiak
1b1a9d4df5 Initialize on main thread 2022-06-22 14:50:17 -07:00
Lukas Joswiak
88557d9169 Simplify function call when transaction is null 2022-06-22 14:50:17 -07:00
Lukas Joswiak
b80ed948f1 Check initialization status before accessing field 2022-06-22 14:50:17 -07:00