Commit Graph

61 Commits

Author SHA1 Message Date
AJ Heller 3d82c522fa [EventEngine] Refactor ServerCallbackCall to use EventEngine::Run (#36126)
This removes two Executor::Run dependencies, and requires that all ServerCallbackCall implementations implement the new `RunAsync` method. There's one other known other implementation of ServerCallbackCall that will need to be updated.

We could also support an "inefficient" path that uses the default engine (not implemented here), for all subclasses that do not want to update. As far as anyone is aware, the ServerCallbackCall class was never intended to be subclassed externally.

Closes #36126

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36126 from drfloob:server-callback-on-ee 6242a78a3f
PiperOrigin-RevId: 619621598
2024-03-28 17:34:00 +00:00
Mark D. Roth 41606054c2 [load_file] remove grpc_load_file() in favor of grpc_core::LoadFile() (#35857)
Closes #35857

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35857 from markdroth:highlander 7b7d95aaa9
PiperOrigin-RevId: 605742734
2024-02-09 15:16:24 -08:00
AJ Heller 82b00c0fa3
[benchmark][reland] Local loadtest scenario runner (#34159)
Relands  #34117, using a different json parsing mechanism.
2023-08-24 11:07:53 -07:00
Yijie Ma 3e24027820
Revert "[benchmark] Local loadtest scenario runner (#34117)" (#34158)
This reverts commit fe1ba18dfc.

Reason: break import



<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2023-08-24 09:53:47 -07:00
AJ Heller fe1ba18dfc
[benchmark] Local loadtest scenario runner (#34117)
This helps developers run benchmark loadtests locally. See comments in
scenario_runner.py for usage.

---------

Co-authored-by: drfloob <drfloob@users.noreply.github.com>
2023-08-23 17:51:20 -07:00
Craig Tiller 20d1efc38a
[stats] Move core stats to C++ (#30936)
* begin c++

* Automated change: Fix sanity tests

* progress

* progress

* missing-files

* Automated change: Fix sanity tests

* moved-from-stats

* remove old benchmark cruft, get tests compiling

* iwyu

* Automated change: Fix sanity tests

* fix

* fix

* fixes

* fixes

* add needed constructor

* Automated change: Fix sanity tests

* iwyu

* fix

* fix?

* fix

* fix

* Remove ResetDefaultEventEngine

Now that it is a weak_ptr, there's no need to explicitly reset it. When
the tracked shared_ptr is deleted, the weak_ptr will fail to lock, and a
new default EventEngine will be created.

* forget existing engine with FactoryReset

* add visibility

* fix

Co-authored-by: ctiller <ctiller@users.noreply.github.com>
Co-authored-by: AJ Heller <hork@google.com>
2022-10-09 21:22:08 -07:00
Craig Tiller 05e6bf2e4a
[build] Add test/core/util, test/core/event_engine to auto build deps (#30364)
* [build] Add test/core/util, test/core/event_engine to auto build deps

* deal with suppressions

* fix suppressions

* Automated change: Fix sanity tests

* fix

* fix

* fix

* fix

* progress

* Automated change: Fix sanity tests

* fix

* fix

* fix

Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2022-07-25 21:59:25 -07:00
AJ Heller 18a8f6aad9
Refactor end2end tests to exercise each EventEngine (#29202)
* Refactor end2end tests to exercise each EventEngine

* fix incorrect bazel_only exclusions

* Automated change: Fix sanity tests

* microbenchmark fix

* sanitize, fix iOS flub

* Automated change: Fix sanity tests

* iOS fix

* reviewer feedback

* first pass at excluding EventEngine test expansion

Also caught a few cases where we should not test pollers, but should
test all engines. And two cases where we likely shouldn't be testing
either product.

* end2end fuzzers to be fuzzed differently via EventEngine.

* sanitize

* reviewer feedback

* remove misleading comment

* reviewer feedback: comments

* EE test_init needs to play with our build system

* fix golden file test runner

Co-authored-by: drfloob <drfloob@users.noreply.github.com>
2022-03-30 15:43:05 -07:00
Richard Belleville 468768865b
Make Buildifier Sanity Test Strict (#27807)
* Fix all lint errors in repo.

* Use strict buildifier by default

* Whoops. That file does not exist

* Attempt fix to buildifier invocation

* Add missing copyright
2021-11-03 14:57:04 -07:00
Craig Tiller d1e01ac139
Add a test for a (now-illegal) build file construct (#27602)
* Add a test for a (now-illegal) build file construct

* add to test suite!

* fix

* fix

* fix syntax
2021-10-06 07:43:59 -07:00
capstan 131579d52d Roll forward of commit 7883b51: Use abseil's flags in tests.
This replaces gflags. Added TODOs where use of `absl::Duration` or `absl::FlagSaver` might be preferred in follow-up cleanup. Fixes #24493.

This reverts commit da66b7d14e.

NEW:
* Adds references to `absl/flags/declare.h`, new to LTS 2020923.2 imported in commit 5b43440.
* Works around MSVC 2017 compiler error with large help text on flags by reducing the help text.
2020-11-06 16:07:19 +01:00
Nathan Herring da66b7d14e
Revert "Abseil Flags" 2020-10-24 15:19:55 -07:00
capstan 7883b5133d Use abseil's flags in tests.
This replaces gflags. Added TODOs where use of `absl::Duration` or `absl::FlagSaver` might be preferred in follow-up cleanup. Fixes #24493.
2020-10-23 19:36:33 +02:00
Esun Kim 6d6648c7e1 Fix clang-tidy errors 2020-10-13 09:51:31 -07:00
Richard Belleville 9918329bb5 Groundhog day 2019-11-06 14:54:31 -08:00
Richard Belleville 57e40c87e9 Buildifier again 2019-11-06 13:57:04 -08:00
Richard Belleville 959945705a Merge branch 'master' of https://github.com/grpc/grpc into blaze_modifications 2019-11-06 11:00:47 -08:00
Lidi Zheng c34bef4ca4 Format all Bazel files with buildifier 2019-11-05 14:03:52 -08:00
Richard Belleville 444d5b7760 Revert "Reuse the definition already in the bazel/ directory"
Turns out that putting this in the main build definition starklark file
means that our users will also incur a dependency on the repo rule.
That's no bueno.

This reverts commit 78e443b4f6.
2019-11-04 15:34:45 -08:00
Richard Belleville 78e443b4f6 Reuse the definition already in the bazel/ directory 2019-11-04 14:12:22 -08:00
Richard Belleville 4c8935761d Add wrapper layer for Blaze 2019-11-04 14:02:30 -08:00
Eytan Kidron c97ce9057b Simplify the platform and constraints settings for remote execution
* Remove the toolchains //third_party/toolchains:local and //third_party/toolchains:local_large.
* Remove the platforms :rbe_ubuntu1604, :rbe_ubuntu1604_large, :local and :local_large.
* No longer inherit from @rbe_default//config:platform but instead use it directly. It is now the only non-windows platform.
* When creating @rbe_default//config:platform directly with rbe_autoconfig, set dockerAddCapabilities and dockerPrivileged directly in the exec_properties field. No need to set dockerNetwork to "off" and dockerSiblingContainers to false since these are the defaults.
* Also set gceMachineType = "n1-highmem-2" on the default platform. This value can be overridden by specific targets that want to use LARGE_MACHINE.
* Use create_exec_properties_dict where appropriate.
* Use custom_exec_properties to define LARGE_MACHINE.

I wasn't able to test thoroughly that this PR does not break any existing targets. I was not able to run anything on windows/mac and I also don't have access to gRPC's RBE setup.
2019-10-29 15:40:28 -04:00
Jan Tattermusch e5e3f70a1a Revert "Revert "Upgrade to bazel 1.0.0"" 2019-10-29 06:31:38 -04:00
Nicolas Noble 04d7e0d11f
Revert "Upgrade to bazel 1.0.0" 2019-10-15 14:26:32 -07:00
Jan Tattermusch 74ade125f2 toolchains no longer support machine types 2019-10-14 10:20:59 -04:00
Jan Tattermusch 0f78b92e87 avoid machine_size:large tests on windows 2019-09-30 13:27:59 +02:00
Jan Tattermusch 6ebc1c616f set uses_polling=False for some bazel tests 2019-09-24 09:50:00 +02:00
Lidi Zheng 5198ccd89c
Revert "Add basic benchmark test for Python" 2019-01-29 00:40:01 -08:00
Lidi Zheng 4f451c78a4 Add basic benchmark test for Python 2019-01-22 16:50:47 -08:00
yang-g 67742ef63f Fix BUILD files. Manually edit bzl files 2018-12-06 14:37:52 -08:00
Bill Feng 9759a1b241 removed accidental submodule update 2018-11-07 15:21:04 -08:00
Moiz Haidry 1303ec7b53 Added benchmarks for Callback based Unary server 2018-11-07 10:08:51 -08:00
Moiz Haidry b4d5c7cee4 Benchmark test for callback unary gRPC
Every thread intitiates multiple RPCs. The Callback of the unary RPC then issues a new RPC and this goes until the benchmark shuts down. For shutdown the main thread waits on a conditional variable. After shutdown the callbacks increment a rpcs done variable and once the the rpcs done equate the the total number of outstanding rpcs, the last callback performing the increment operation also issues a signal to wake up the main thread. The mainthread process to join the other threads and perform cleanup
2018-10-08 12:24:03 -07:00
Bill Feng 21824afb09 used alternative approach - generated bazel scenarios 2018-08-27 15:30:52 -07:00
Bill Feng 654a1ea0f6 made timeout longer 2018-08-27 10:52:17 -07:00
Bill Feng 5be7304b06 used standalone JSON files for scenarios 2018-08-24 09:46:39 -07:00
Bill Feng 373c5b31db added qps tests on bazel 2018-08-20 10:55:49 -07:00
Alex Polcyn 92e0a70ec6 Make QPS server builder customizeabled 2018-07-23 17:16:13 +00:00
Adele Zhou 8edd56841e Step 3 of multipool RBE configuration. 2018-07-13 10:46:41 -07:00
kpayson64 7a20c962df Break out qps services into seperate protos 2018-04-18 22:13:09 -07:00
Vijay Pai 195cf1ebfd Move histogram to test/core/util 2017-11-30 15:02:04 -08:00
Vijay Pai 088112fea1 Create inproc version of QPS test and add a few simple tests of this to standard testing suite. 2017-10-19 14:29:13 -07:00
Craig Tiller e1101cf099 Update Bazel for new systems 2017-09-06 09:42:20 -07:00
Nicolas "Pixel" Noble 2bc5e3ac40 Moving visibility and package creation to the build system. 2017-08-30 19:18:37 +02:00
Guantao Liu ac9fdfbc40 Removed unnecessary default values and fixed sanity. 2017-07-14 17:33:19 -07:00
Guantao Liu e72b5d6ab8 Merge remote-tracking branch 'upstream/master' into qps_driver to resolve conflicts. 2017-07-13 18:29:18 -07:00
Nicolas Noble 9877189e45 Merge pull request #11310 from nicolasnoble/import
Import mutations.
2017-07-13 13:39:58 -07:00
yang-g b575a34e05 Replace InitBenchmark with InitTest. Remove qps_test.cc 2017-07-13 09:47:27 -07:00
Guantao Liu abe3cf51f0 Add a new metric 'Queries/CPU-sec'.
Enable internal credential types.
2017-07-12 17:36:30 -07:00
Nicolas "Pixel" Noble 5d80dc4985 Merge branch 'master' of https://github.com/grpc/grpc into import 2017-06-26 22:01:11 +02:00