Commit Graph

1186 Commits

Author SHA1 Message Date
yang-g ad0df7bf1f Discard the read buffer on stream error 2016-02-22 10:00:20 -08:00
Craig Tiller fc6fec2a2d Merge pull request #5258 from vjpai/poll_override2
Avoid a race when overriding default poll function
2016-02-21 22:59:52 -08:00
yang-g c10348a555 Add custom_metadata test case 2016-02-19 16:05:10 -08:00
Vijay Pai 2d435b9178 Fix the slowdown factor 2016-02-19 00:42:08 -08:00
Vijay Pai 3b28872210 1. Adjust tsan/asan/msan slowdowns according to documentation
tsan documentation says 2-20x, so set it at 20x
asan documentation says 1.2-2.7x, so set it at 3x
msan documentation says 2-4x, so set it at 4x
This is now much less optimistic than before

2. Reactive tsan tests for qps_test
3. Set CPU load for qps_openloop_test
4. Divide qps_openloop_test Poisson rate by the slowdown factor of
   the configuration
2016-02-19 00:28:28 -08:00
yang-g 12a0a2c20b move tls type name to .cc file 2016-02-19 00:22:20 -08:00
yang-g 4c8aed3dba Add a helper to return all the secure types 2016-02-19 00:19:39 -08:00
yang-g 17197ddc71 Revert "make an enum"
This reverts commit 5152cd29f8.
2016-02-19 00:04:22 -08:00
yang-g 5152cd29f8 make an enum 2016-02-18 16:37:51 -08:00
yang-g 7d2a3e1917 Refactor end2end_test. Make the credentials a separate library. 2016-02-18 15:41:56 -08:00
Vijay Pai 64e7875510 Should have a test for 0 and negative alarms to make sure that those make
it on to the CQ like any other.
2016-02-18 13:38:32 -08:00
Craig Tiller 16f6826ffd Merge github.com:grpc/grpc into fix-proto-docker 2016-02-18 07:14:37 -08:00
David Garcia Quintas 1689990ff3 clang format 2016-02-17 18:32:17 -08:00
David Garcia Quintas 4105505b33 Fixed refactoring of grpc_arg pointer vtable 2016-02-17 18:23:15 -08:00
Sree Kuchibhotla ac94c430d2 Merge pull request #5186 from yang-g/inherit_from_grpc_library
Provide explicit API for user to set user agent string prefix
2016-02-17 15:51:57 -08:00
Vijay Pai 2815f184a3 Document variable names 2016-02-17 13:55:03 -08:00
Vijay Pai 8a2ff73640 Use more variables for better explanations 2016-02-17 09:21:10 -08:00
Vijay Pai ed3cd423b6 Use three different load-factors and document load-factor variable 2016-02-17 08:49:03 -08:00
Vijay Pai ee53dc5e08 Merge branch 'master' into loaded 2016-02-16 13:51:38 -08:00
Vijay Pai b65eda4c88 Make the poll override function assert on non-zero timeout if invoked
from the end2end test thread itself (done by adding a TLS on that thread)

Also clang-format
2016-02-16 13:49:22 -08:00
Vijay Pai 837c9bda1d Merge branch 'master' into poll_override2 2016-02-16 13:28:31 -08:00
Vijay Pai 018879aa9a Set up poll overrides 2016-02-16 09:20:50 -08:00
vjpai cf4daebe27 Comment the requirements for changing grpc_poll_function and do
poll overrides in such a way as to avoid polling races
2016-02-15 02:33:54 -08:00
Vijay Pai e40aefb829 Fix the timeout 2016-02-13 01:25:30 -08:00
Vijay Pai 8ca0faaf52 use timeouts with proper fixture multipliers rather than raw,
since tsan slows things down a lot and may complicate issues such
as shutdown.
2016-02-13 00:25:45 -08:00
Vijay Pai 8eef7e3b58 Merge branch 'master' into alarm_openloop 2016-02-12 18:11:28 -08:00
Vijay Pai 1a06082265 Add 70% load scenario for testing with open-loop 2016-02-12 17:34:08 -08:00
Vijay Pai c84cb3e00a Merge branch 'alarm_openloop' into loaded 2016-02-12 16:25:30 -08:00
Vijay Pai 6583176337 clang-format 2016-02-12 15:59:03 -08:00
vjpai 7914e62d48 Attack of the const police.
I also added some unrequested const's
2016-02-12 15:57:08 -08:00
yang-g a3c968d9c2 Merge remote-tracking branch 'upstream/master' into inherit_from_grpc_library 2016-02-12 14:54:16 -08:00
Craig Tiller a7d41147ea Merge github.com:grpc/grpc into bad_metadata 2016-02-12 10:13:52 -08:00
Craig Tiller eb841e2010 Revert "Revert "Proto API for LB request/responses"" 2016-02-11 15:49:16 -08:00
Craig Tiller c35e2c582f Revert "Proto API for LB request/responses" 2016-02-11 15:45:03 -08:00
Craig Tiller c3602dc1cf Merge pull request #4038 from dgquintas/grpclb_api
Proto API for LB request/responses
2016-02-11 15:32:22 -08:00
Vijay Pai 761bcb4a18 Cleanup to make it work with clang build 2016-02-11 11:59:04 -08:00
Vijay Pai 914455782f Sanity (clang-format and copyright) 2016-02-11 06:08:58 -08:00
Vijay Pai 1132c6b7db Simplify and properly implement openloop testing.
Revive it in tests as well
2016-02-11 06:05:24 -08:00
Vijay Pai d472ad2a7f Merge branch 'alarm_mods' into alarm_openloop 2016-02-11 05:37:18 -08:00
vjpai dbca72fb01 init test 2016-02-11 00:18:16 -08:00
vjpai 8fdafede06 tag fed in by user should be any arbitrary tag, not a CompletionQueueTag
type
2016-02-10 23:16:55 -08:00
vjpai 04e992a750 Make C++ alarm class usable and testable - there were some build issues and
it was not actually even included in the library or the test suite.
2016-02-10 16:58:38 -08:00
Vijay Pai 9982c6fc3a Fix random number generators and improve code style (stop using
operator overloads)
2016-02-10 14:55:33 -08:00
yang-g 1945ae4285 Fix copyright 2016-02-10 12:48:32 -08:00
yang-g d59ad7ef39 Provide explicit API for user to set user agent string prefix 2016-02-10 12:42:53 -08:00
David Garcia Quintas 7e46618897 Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-02-08 20:07:19 -08:00
Craig Tiller 45551e0c99 Fix sanity 2016-02-08 14:22:40 -08:00
Sree Kuchibhotla 001db590ff Modify the test to have large number of threads receiving the RPCs and a
smaller number of threads sending the RPCs. This increases the
likelyhood of race-conditions on receiving threads.
2016-02-08 10:57:41 -08:00
murgatroid99 7a55684a13 Clang format and fix copyrights 2016-02-05 11:33:30 -08:00
murgatroid99 309830f6b8 Replace 'long' with 'int64_t' in public core headers 2016-02-05 11:30:00 -08:00
Michael Lumish bcfe99a547 Merge pull request #5008 from vjpai/worker_quit
Provide an RPC to quit the performance benchmarking workers
2016-02-04 16:32:03 -08:00
Bogdan Drutu e4fdcd9242 Merge pull request #5013 from a-veitch/tag_set_to_context
Change all instances of census_tag_set to census_context
2016-02-04 12:42:35 -08:00
vjpai ed53c08238 Merge branch 'master' into worker_quit 2016-02-04 11:50:45 -08:00
Craig Tiller 3ad28d0f1c Merge pull request #4828 from vjpai/async_thread_stress_test
Introduce thread stress test for async RPCs
2016-02-04 11:04:22 -08:00
Yang Gao 0789c49566 Merge pull request #5042 from ctiller/compile
Fix clang3.7/tsan compile failure
2016-02-04 09:18:02 -08:00
Vijay Pai 0a3a766960 Give tsan a chance 2016-02-04 07:32:29 -08:00
Vijay Pai 912fe05ed3 Merge branch 'master' into async_thread_stress_test 2016-02-03 16:23:45 -08:00
Vijay Pai feef8be5ae clang-format 2016-02-03 16:21:25 -08:00
Craig Tiller 6f87164f3c Properly handle "." in metadata 2016-02-03 16:15:31 -08:00
Vijay Pai 63b28447e8 Remove the command-line flags 2016-02-03 15:40:06 -08:00
Vijay Pai 490e5023d7 Fix a typecast... 2016-02-03 15:37:03 -08:00
Yang Gao e51db34255 Merge pull request #4958 from sreecha/server_try_cancel_api
Implement a TryCancel() API on ServerContext to cancel the API from the server side
2016-02-03 12:42:21 -08:00
Vijay Pai e51d29d93c Remove some std:: so that grpc:: will be used by default when available 2016-02-03 12:00:09 -08:00
Vijay Pai 9f3bbb00d8 Generalize namespace for ParseCommandLineFlags 2016-02-03 11:41:50 -08:00
Vijay Pai d10bbb63f8 Refactor to favor composition over inheritance
Also make num_threads and num_rpcs as command-line flags
2016-02-03 11:26:23 -08:00
Alistair Veitch 9ded5dbf35 fix missed merge issue 2016-02-03 11:24:11 -08:00
Craig Tiller e1c2d6a6df Fix clang3.7/tsan compile failure 2016-02-03 11:18:29 -08:00
Vijay Pai ce7929c877 Merge branch 'master' into async_thread_stress_test 2016-02-03 10:13:19 -08:00
Sree Kuchibhotla 4aadcb4ebf Run tools/distrib/clang_format_code.sh 2016-02-03 09:44:27 -08:00
vjpai 7f1b65b8c6 Took out dependence on vector 2016-02-03 09:10:14 -08:00
Alistair Veitch 6f2b8993fd merge 2016-02-03 09:02:46 -08:00
vjpai 5a80d6f606 Merge branch 'master' into limit_cores 2016-02-03 09:02:10 -08:00
vjpai 574020edf1 Forgot to put this in the Mac version 2016-02-03 07:58:23 -08:00
Sree Kuchibhotla 9bc6fa0a40 Merge branch 'master' into server_try_cancel_api 2016-02-03 07:41:31 -08:00
yang-g 9fd55b0d2d remove duplicate functions 2016-02-02 16:23:35 -08:00
yang-g 7b0edbd1a3 remove the old impl caused by 4921 2016-02-02 16:05:21 -08:00
Alistair Veitch ddb163a0e4 merge 2016-02-02 13:33:44 -08:00
Vijay Pai 2066443b7c Function name changed on merge.... 2016-02-02 11:48:12 -08:00
Vijay Pai b47b556d33 Merge branch 'master' into worker_quit 2016-02-02 10:36:12 -08:00
Vijay Pai 2ed337aab3 clang-format 2016-02-02 09:43:35 -08:00
Alistair Veitch 75d5c0f024 post merge 2016-02-02 09:43:02 -08:00
vjpai 21e5d2b2f1 Add a Quit RPC so that we can conveniently shut down the workers from the driver. 2016-02-02 09:36:36 -08:00
Vijay Pai daadcc8f74 at 2016-02-01 16:49:55 -08:00
Vijay Pai 33e51184fc Address reviewer comments regarding const and shortage of comments 2016-02-01 16:40:06 -08:00
Vijay Pai 0d7a070e7e Add core-limited scenario and protobuf-based QPS scenario 2016-02-01 14:10:47 -08:00
Sree Kuchibhotla a0a8eaab0e Merge branch 'master' into server_try_cancel_api 2016-02-01 14:04:19 -08:00
Vijay Pai 595674275b Copyright and clang-format 2016-02-01 13:28:55 -08:00
Vijay Pai 6b05639ab1 Make sure that client limit is valid 2016-02-01 13:01:34 -08:00
Vijay Pai 7d45cdb60b Enable properly working core limits on clients and servers,
and determine these dynamically if only one or the other is
specified but both are running on the same host
2016-02-01 13:00:19 -08:00
Sree Kuchibhotla 369a04ace6 Address code review comments 2016-02-01 10:53:13 -08:00
Vijay Pai c5eec2be89 Make dynamic sizing of async threads work again 2016-02-01 09:46:30 -08:00
Vijay Pai c64736d852 Clean-up core list usage and make it possible to reset the core list 2016-02-01 09:33:11 -08:00
Vijay Pai 03ba4d746a Merge branch 'master' into corelimit2 2016-02-01 08:17:27 -08:00
yang-g f8174ea37d use huffman prefix 2016-02-01 00:09:13 -08:00
Sree Kuchibhotla 0f242acb9d Comments and a minor fix 2016-01-29 18:13:33 -08:00
David Garcia Quintas dd18c4a4a3 Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-29 15:05:53 -08:00
Sree Kuchibhotla 4fb590852f Use the same completion queue for both client and server 2016-01-29 11:16:24 -08:00
Vijay Pai 5919e81ff1 Remove host option from ServerConfig proto since it is error-prone and
may cause inter-language confusion.
2016-01-29 01:24:05 -08:00
Sree Kuchibhotla f25c6ba229 Comments and format 2016-01-28 18:04:03 -08:00
Sree Kuchibhotla 944f4cf14e Sync server end2end and async_end2end tests 2016-01-28 17:37:10 -08:00
Craig Tiller 6c3de35d3d Merge pull request #4775 from dgquintas/sync-async-plus-interfaces
Support mixing sync and async method in the same service + Separation of core from proto compiler output
2016-01-28 16:00:40 -08:00
David Garcia Quintas fb01883859 Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-28 14:39:54 -08:00
Vijay Pai 269c4b98c5 Testing scenarios for various performance characteristics 2016-01-28 12:18:54 -08:00
David Garcia Quintas 6523391782 sanity fixes 2016-01-27 20:07:36 -08:00
David Garcia Quintas b4e51b52bd Merge branch 'master' of github.com:grpc/grpc into sync-async-plus-interfaces 2016-01-27 19:57:58 -08:00
David Garcia Quintas 5a9462339d copyrights 2016-01-27 19:22:14 -08:00
Vijay Pai c6d5cd180e Merge branch 'master' into async_thread_stress_test 2016-01-27 16:38:08 -08:00
Yang Gao d991735cb1 Merge pull request #4918 from vjpai/dynamic_sizing2
Allow dynamic sizing of async test thread pools (to core count) and number of client workers
2016-01-27 16:14:59 -08:00
Vijay Pai 1d5faae03b Merge branch 'master' into async_thread_stress_test 2016-01-27 15:20:03 -08:00
Craig Tiller a0fef14784 clang-format code 2016-01-27 15:10:39 -08:00
Vijay Pai 16e45702ac clang-format 2016-01-27 14:51:12 -08:00
vjpai 86eac3460f Merge branch 'master' into async_thread_stress_test 2016-01-27 14:09:15 -08:00
Craig Tiller 324426b654 Merge github.com:grpc/grpc into fix-c++ 2016-01-27 13:52:56 -08:00
Vijay Pai 1d71a0e084 Merge branch 'generic_qps' into dynamic_sizing2 2016-01-27 12:16:05 -08:00
Vijay Pai 36e7770101 Merge branch 'master' into generic_qps 2016-01-27 12:15:48 -08:00
Vijay Pai 7d8335f875 Don't log newlines 2016-01-27 12:00:41 -08:00
Vijay Pai 7a984f0e3a Copyright 2016-01-27 11:24:57 -08:00
Vijay Pai d02dd30a1f Also dynamic sizing for num_clients on performance tests 2016-01-27 11:23:34 -08:00
Craig Tiller b0f275e4af Small testing fixes
- end2end test deadlines may complete before checking IsCancelled
  => don't expect it to be false in these cases
- add exponential backoff to port_posix
- ensure run_tests rebuilds targets with a regex I commonly use
2016-01-27 10:45:50 -08:00
Vijay Pai 32baa5e622 Allow dynamic sizing of async client and server thread pools 2016-01-27 10:01:41 -08:00
vjpai a24e9d774c Sanity checks and asan fix 2016-01-27 09:45:29 -08:00
vjpai 0c31b60805 Sanity failures (copyright, clang-format) 2016-01-27 09:03:18 -08:00
vjpai 94aada9ee5 clang-format 2016-01-26 18:12:30 -08:00
vjpai 020c2f36ac Fix copyright 2016-01-26 18:11:22 -08:00
vjpai a091a23a7f No need to put \n at end of a log message 2016-01-26 18:10:42 -08:00
vjpai a00f998089 Actually create async generic server 2016-01-26 17:51:35 -08:00
vjpai c1e70dbc61 100->1000 2016-01-26 15:24:56 -08:00
vjpai 79bdde2ac3 Make async message match sync 2016-01-26 15:22:21 -08:00
Vijay Pai bdf4acbbfb Properly state client name 2016-01-26 15:15:26 -08:00
Vijay Pai 0f14209061 Improve logging for test 2016-01-26 14:20:07 -08:00
Vijay Pai 57ecf766ab clang-format 2016-01-26 12:42:48 -08:00
Vijay Pai 58da895a8c localhost -> wildcard address 2016-01-26 10:57:07 -08:00
David Garcia Quintas 6a48405ed0 pre sync_stream.cc creation. Does not compile 2016-01-25 19:12:37 -08:00
David Garcia Quintas 2425bbbc55 Further work. Compiles. WIP 2016-01-25 17:32:48 -08:00
Vijay Pai c7c5639d3e Make TearDown follow typical gtest fixture format 2016-01-22 15:34:14 -08:00
Vijay Pai e3b03712fd 100->1000 2016-01-22 11:20:37 -08:00
Vijay Pai 4dc269ed98 Merge async client thread stress test into main thread stress test so as to
improve code reuse
2016-01-22 11:19:30 -08:00
Vijay Pai dac77d600c Trim some unused code copied from another test. 2016-01-21 18:00:42 -08:00
Vijay Pai abd5aa402f Introduce thread stress test using async client. The server is still sync
for now. This will increase our coverage of concurrent execution cases in C++
since we don't currently have any coverage for multithreaded async execution using
a common completion queue.

In this test, 100 client threads initiate 1000 RPCs each, then join, and then
100 client threads come along to proces those RPC completion events as they come back.
2016-01-21 17:48:29 -08:00
David Garcia Quintas 826505cc8f Merge branch 'master' of github.com:grpc/grpc into sync-async-plus-interfaces 2016-01-21 15:25:54 -08:00
David Garcia Quintas a43aadd7e1 fixed copyrights 2016-01-21 10:01:28 -08:00
David Garcia Quintas 08a0a3306e Made "codedgen" directories closed over #includes 2016-01-21 01:04:36 -08:00
David Garcia Quintas f3ddb7c55a clang-format 2016-01-20 16:02:22 -08:00
David Garcia Quintas 12fc53f21f Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-20 15:42:17 -08:00
David Garcia Quintas 6190854157 updated copyrights 2016-01-20 11:21:27 -08:00
David Garcia Quintas 278c0fbb61 Merge branch 'master' of github.com:grpc/grpc into grpclb_api 2016-01-19 20:43:41 -08:00
David Garcia Quintas a701ed7759 Merge branch 'proto_interfaces' into yang-g-sync_async_mix 2016-01-19 18:44:47 -08:00
vjpai f524844da9 Fix include guard 2016-01-19 15:34:14 -08:00
vjpai 41859d025b Added todo as a reminder to drive core selection automatically 2016-01-19 15:30:22 -08:00
vjpai 4f5146dac2 Change name from coresched to limit_cores 2016-01-19 15:28:52 -08:00