Commit Graph

803 Commits

Author SHA1 Message Date
Vaidas Gasiunas 4d6ff720fe
Check network thread error in API and unit tests (#8528) 2022-10-21 13:32:06 +02:00
Vaidas Gasiunas 70311ee26e
ApiTester: include server configuration, separate ctest for every test file (#8499)
* ApiTester: Include server configuration into TOML files

* ApiTests: Generate a separate ctest target for every API test file

* Fix upgrade test script after refactoring

* ApiTests: test with multiple processes. Limit TLS tests to a single process

* ApiTests: Reformat TOML files without indentation

* ApiTests: adding explicit dependencies on the relevant binaries to the ctest command
2022-10-21 11:53:35 +02:00
Kao Makino ee4ef59be5
Merge pull request #8503 from sfc-gh-zyang/zyang/FDBCORE-3200
support --load_factor
2022-10-19 20:51:29 -07:00
sfc-gh-zyang 5046b235a4 reformat 2022-10-19 11:48:27 -07:00
sfc-gh-zyang d7cb50d3db remove debug info, add comment, fix format error 2022-10-19 10:57:52 -07:00
Junhyun Shim cda6202a26
Disable delete-native-lib-after-loading client knob for some C API tests (#8501)
* Disable delete-on-sharedobj-load client knob

To have symbolized stack traces upon xSAN error reproduce

* Add knob support to run_c_api_tests.py

* Apply DELETE_NATIVE_LIB_AFTER_LOADING knob to all C API tests
2022-10-19 10:40:31 +02:00
sfc-gh-zyang a4e9b2e4aa fix typo 2022-10-18 17:32:25 -07:00
sfc-gh-zyang 35f7389b2a support load_factor 2022-10-18 17:03:44 -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
Sam Gwydir 0d2bf71f71
Add help for mako's --disable_client_bypass (#8476)
* Add help for --disable_client_bypass

* formatting
2022-10-14 16:41:47 -05:00
Vaidas Gasiunas 5ca3606c7d
Add transaction timeout tests in ApiTester (#8412)
* ApiTester: test transaction timeout

* ApiTester: Turn off buggify for timeout tests

* ApiTester: Enable failure injection in timeout tests; make write transactions self-conflicting

* Consistently use 4 spaces instead of mixing with tabs

Co-authored-by: Andrew Noyes <andrew.noyes@snowflake.com>
2022-10-13 17:15:19 +02:00
Josh Slocum b3c1add1a8 Merge branch 'main' into bg_fix_mako 2022-10-11 12:35:48 -05:00
Josh Slocum b704315465 fixing parameter to be bool 2022-10-10 09:30:16 -05:00
Josh Slocum 4ebe341e2c adding --disable_client_bypass to mako 2022-10-07 16:12:39 -05:00
Jingyu Zhou 767cb9b3e2
Merge pull request #8389 from sfc-gh-vgasiunas/vgasiunas-retry-dboperations
ApiTester: not creating transactions for DB operations; retrying without transactions
2022-10-07 10:00:43 -07:00
Vaidas Gasiunas 0e09978bde Merge remote-tracking branch 'apple/main' into vgasiunas-retry-dboperations 2022-10-07 09:14:36 +02:00
Andrew Noyes 75241092eb
Update bindings/c/test/fdb_api.hpp 2022-10-06 12:23:56 -07:00
Andrew Noyes caf881f222 Add addReadConflictRange 2022-10-06 12:03:51 -07:00
Andrew Noyes 51507aa454 Make ApiWorkload::clearData tx self-conflicting 2022-10-06 11:51:16 -07:00
Vaidas Gasiunas e3c3a64c78 ApiTester: use an existing API method to determine if an error is retriable 2022-10-06 16:20:58 +02:00
A.J. Beamon cfb36bd9c3 Support versionstamps in key backed object properties 2022-10-05 12:48:40 -07:00
Markus Pilman 550488b020 Merge remote-tracking branch 'origin/main' into bugfixes/open-for-ide
# Conflicts:
#	bindings/c/CMakeLists.txt
#	fdbclient/include/fdbclient/GetEncryptCipherKeys.actor.h
#	fdbserver/BackupWorker.actor.cpp
#	fdbserver/BlobWorker.actor.cpp
#	fdbserver/CommitProxyServer.actor.cpp
#	fdbserver/KeyValueStoreMemory.actor.cpp
#	fdbserver/StorageCache.actor.cpp
#	fdbserver/include/fdbserver/GetEncryptCipherKeys.actor.h
#	fdbserver/storageserver.actor.cpp
#	fdbserver/workloads/PhysicalShardMove.actor.cpp
#	flow/CMakeLists.txt
2022-10-04 18:27:48 -06:00
Markus Pilman 97dfc6823f fixed build with OPEN_FOR_IDE 2022-10-04 17:01:02 -06:00
Vaidas Gasiunas 5d6cb4d3dd ApiTester: Fix handling retries of DB operations 2022-10-04 17:30:11 +02:00
Vaidas Gasiunas 415e1aeb1f
Fix for a memory leak in database operations called after create database errors (#8334)
* ApiTester: cancel pending futures for non-transactional operations

* Clear future callback in case of abort signal to avoid memory leaks

* Abortable future: Make sure all callbacks are cleared in case of premature signal; addressing comments

* Abortable future: remove debugging asserts

* Abortable future: restore the previous method for cancelling wrapped future

* Removing debugging code
2022-10-01 11:30:52 +02:00
Josh Slocum f95c22c6a2
Blob Granule Database API tests (#8276)
* adding verify

* Adding error test cases

* more fixes to bg api tests
2022-09-26 11:15:10 +02:00
Jon Fu 7a09b701cc
Merge pull request #8141 from sfc-gh-jfu/network-disable-bypass
Introduce network option for disabling mvc bypass
2022-09-21 17:33:48 -07:00
Dennis Zhou 4ea4546cb6 blob/java: verifyBlobRange() with latestVersion 2022-09-21 14:07:16 -07:00
Jon Fu 1f778f9d76 Merge branch 'main' of github.com:apple/foundationdb into network-disable-bypass 2022-09-20 09:30:53 -07:00
Vaidas Gasiunas 97eddbc06a
Extend ApiTester with support for testing database operations (#8221)
* ApiTester: Refactoring removing unnecessary transaction actor classes

* ApiTester: enable executing non-transactional database operations

* ApiTester: a test for fdb_database_list_blobbified_ranges

* ApiTester: Fix memory ownership of the end key in randomGetRangeOp

* ApiTester: reuse get range result validation in blob granule tests
2022-09-20 16:21:38 +02:00
1inker db1f858c64
ANSI C syntax mandates declare functions without parameters with void in parameters list. K&R syntax is obsolete. (#8222) 2022-09-19 12:09:05 -07:00
Jon Fu 1abac8ea9f check on shared state ptr in native api and add to test spec in api tester 2022-09-16 15:11:33 -07:00
Jon Fu 7b0285a205 attempt to pass sim tests and api tests 2022-09-15 11:02:28 -07:00
Jon Fu a7956f42a4 add version guard and add network option to testConfig 2022-09-14 13:15:24 -07:00
Dennis Zhou c65ecb08d1 bindings/c: fix std++fs dependency
Beginning with clang 9, <filesystem> support is included without needing
to link anything else.

https://releases.llvm.org/9.0.0/projects/libcxx/docs/UsingLibcxx.html
2022-09-13 15:01:27 -07:00
Dennis Zhou 540b814446
Merge pull request #8158 from sfc-gh-dzhou/api-version
ApiVersion cleanups
2022-09-13 14:00:22 -07:00
A.J. Beamon 2d68e246fb Fix a couple other merge issues 2022-09-13 08:23:26 -07:00
Dennis Zhou 88d8242bb6 bindings: clean up ApiVersion settings
Currently ApiVersion is scattered and hardcoded across the bindings.
Let's at least clean it up so it's once per file or less and use some
redirection against FDB_API_VERSION or API_VERSION.
2022-09-12 17:08:57 -07:00
Dennis Zhou fed00e0f0c ApiTester: TMP_DIR ApiVersion gate 2022-09-12 17:08:57 -07:00
Dennis Zhou d6d69379a8 ApiVersion: tenant specific guards 2022-09-12 17:08:56 -07:00
A.J. Beamon b0f4e0b997 Fix some merge issues 2022-09-12 15:42:31 -07:00
A.J. Beamon b9c8bdeec6 Extract randomTenant() function; add back accidentally deleted line; move the new multi tenant test and fix a name error in its spec 2022-09-12 15:03:30 -07:00
A.J. Beamon 8086fc819e Some refactoring of tenants in the API tester. This mainly changes it so that tenants are stored on the ApiWorkload and any subclasses can use them. Update the setup phase to work across tenants. 2022-09-12 15:03:30 -07:00
Sagar Vemuri 00276d5700 Move the test to be multithreaded 2022-09-12 15:02:44 -07:00
Sagar Vemuri ccf405c17a Add more workload operations support 2022-09-12 15:02:44 -07:00
Sagar Vemuri 52150a5cf7 Add a new multi-tenant specific Transaction Executor 2022-09-12 15:01:39 -07:00
Sagar Vemuri ba314fbc12 Plumb tenant id from individual workload operation to transaction executor 2022-09-12 14:57:29 -07:00
Sagar Vemuri 6b17326135 Add tenant support 2022-09-12 14:40:47 -07:00