aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2016-03-23 14:52:00 -0700
committerGravatar Craig Tiller <ctiller@google.com>2016-03-23 14:52:00 -0700
commitef37d7cd4eee37689380e727a268fbb06f286fcb (patch)
treecfa8a15d6d8b6e0a05e29e57e7c2cad6cf7351a9 /tools
parente5de692cda2a994f638801c506c07d9fc4f237b9 (diff)
parent634e67617b3b445185b5485f493b591b53b35d9d (diff)
Merge github.com:grpc/grpc into accounting
Diffstat (limited to 'tools')
-rw-r--r--tools/doxygen/Doxyfile.core.internal14
-rw-r--r--tools/run_tests/sources_and_headers.json50
-rw-r--r--tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md25
-rw-r--r--tools/run_tests/tests.json4
4 files changed, 59 insertions, 34 deletions
diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal
index 173bc5dd3e..5044ed2c93 100644
--- a/tools/doxygen/Doxyfile.core.internal
+++ b/tools/doxygen/Doxyfile.core.internal
@@ -806,9 +806,9 @@ src/core/client_config/uri_parser.h \
src/core/compression/algorithm_metadata.h \
src/core/compression/message_compress.h \
src/core/debug/trace.h \
-src/core/httpcli/format_request.h \
-src/core/httpcli/httpcli.h \
-src/core/httpcli/parser.h \
+src/core/http/format_request.h \
+src/core/http/httpcli.h \
+src/core/http/parser.h \
src/core/iomgr/closure.h \
src/core/iomgr/endpoint.h \
src/core/iomgr/endpoint_pair.h \
@@ -948,9 +948,9 @@ src/core/client_config/uri_parser.c \
src/core/compression/compression_algorithm.c \
src/core/compression/message_compress.c \
src/core/debug/trace.c \
-src/core/httpcli/format_request.c \
-src/core/httpcli/httpcli.c \
-src/core/httpcli/parser.c \
+src/core/http/format_request.c \
+src/core/http/httpcli.c \
+src/core/http/parser.c \
src/core/iomgr/closure.c \
src/core/iomgr/endpoint.c \
src/core/iomgr/endpoint_pair_posix.c \
@@ -1048,7 +1048,7 @@ src/core/transport/metadata_batch.c \
src/core/transport/static_metadata.c \
src/core/transport/transport.c \
src/core/transport/transport_op_string.c \
-src/core/httpcli/httpcli_security_connector.c \
+src/core/http/httpcli_security_connector.c \
src/core/security/b64.c \
src/core/security/client_auth_filter.c \
src/core/security/credentials.c \
diff --git a/tools/run_tests/sources_and_headers.json b/tools/run_tests/sources_and_headers.json
index 43c6f3f838..06dc6d0ff8 100644
--- a/tools/run_tests/sources_and_headers.json
+++ b/tools/run_tests/sources_and_headers.json
@@ -923,9 +923,9 @@
],
"headers": [],
"language": "c",
- "name": "httpcli_format_request_test",
+ "name": "http_parser_test",
"src": [
- "test/core/httpcli/format_request_test.c"
+ "test/core/http/parser_test.c"
],
"third_party": false,
"type": "target"
@@ -939,9 +939,9 @@
],
"headers": [],
"language": "c",
- "name": "httpcli_parser_test",
+ "name": "httpcli_format_request_test",
"src": [
- "test/core/httpcli/parser_test.c"
+ "test/core/http/format_request_test.c"
],
"third_party": false,
"type": "target"
@@ -957,7 +957,7 @@
"language": "c",
"name": "httpcli_test",
"src": [
- "test/core/httpcli/httpcli_test.c"
+ "test/core/http/httpcli_test.c"
],
"third_party": false,
"type": "target"
@@ -973,7 +973,7 @@
"language": "c",
"name": "httpscli_test",
"src": [
- "test/core/httpcli/httpscli_test.c"
+ "test/core/http/httpscli_test.c"
],
"third_party": false,
"type": "target"
@@ -3960,9 +3960,9 @@
"src/core/compression/algorithm_metadata.h",
"src/core/compression/message_compress.h",
"src/core/debug/trace.h",
- "src/core/httpcli/format_request.h",
- "src/core/httpcli/httpcli.h",
- "src/core/httpcli/parser.h",
+ "src/core/http/format_request.h",
+ "src/core/http/httpcli.h",
+ "src/core/http/parser.h",
"src/core/iomgr/closure.h",
"src/core/iomgr/endpoint.h",
"src/core/iomgr/endpoint_pair.h",
@@ -4158,13 +4158,13 @@
"src/core/compression/message_compress.h",
"src/core/debug/trace.c",
"src/core/debug/trace.h",
- "src/core/httpcli/format_request.c",
- "src/core/httpcli/format_request.h",
- "src/core/httpcli/httpcli.c",
- "src/core/httpcli/httpcli.h",
- "src/core/httpcli/httpcli_security_connector.c",
- "src/core/httpcli/parser.c",
- "src/core/httpcli/parser.h",
+ "src/core/http/format_request.c",
+ "src/core/http/format_request.h",
+ "src/core/http/httpcli.c",
+ "src/core/http/httpcli.h",
+ "src/core/http/httpcli_security_connector.c",
+ "src/core/http/parser.c",
+ "src/core/http/parser.h",
"src/core/iomgr/closure.c",
"src/core/iomgr/closure.h",
"src/core/iomgr/endpoint.c",
@@ -4588,9 +4588,9 @@
"src/core/compression/algorithm_metadata.h",
"src/core/compression/message_compress.h",
"src/core/debug/trace.h",
- "src/core/httpcli/format_request.h",
- "src/core/httpcli/httpcli.h",
- "src/core/httpcli/parser.h",
+ "src/core/http/format_request.h",
+ "src/core/http/httpcli.h",
+ "src/core/http/parser.h",
"src/core/iomgr/closure.h",
"src/core/iomgr/endpoint.h",
"src/core/iomgr/endpoint_pair.h",
@@ -4771,12 +4771,12 @@
"src/core/compression/message_compress.h",
"src/core/debug/trace.c",
"src/core/debug/trace.h",
- "src/core/httpcli/format_request.c",
- "src/core/httpcli/format_request.h",
- "src/core/httpcli/httpcli.c",
- "src/core/httpcli/httpcli.h",
- "src/core/httpcli/parser.c",
- "src/core/httpcli/parser.h",
+ "src/core/http/format_request.c",
+ "src/core/http/format_request.h",
+ "src/core/http/httpcli.c",
+ "src/core/http/httpcli.h",
+ "src/core/http/parser.c",
+ "src/core/http/parser.h",
"src/core/iomgr/closure.c",
"src/core/iomgr/closure.h",
"src/core/iomgr/endpoint.c",
diff --git a/tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md b/tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md
new file mode 100644
index 0000000000..c4c9f14513
--- /dev/null
+++ b/tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md
@@ -0,0 +1,25 @@
+Stress Test client Specification
+=========================
+This document specifies the features a stress test client should implement in order to work with the stress testing framework. The stress test clients are executed against the existing interop test servers.
+
+**Requirements**
+--------------
+**1.** A stress test client should be able to repeatedly execute one or more of the existing 'interop test cases'. It may just be a wrapper around the existing interop test client. The exact command line arguments the client should support are listed in _Table 1_ below.
+
+**2.** The stress test client must implement a metrics server defined by _[metrics.proto](https://github.com/grpc/grpc/blob/master/src/proto/grpc/testing/metrics.proto)_ and must expose _qps_ as a long-valued Gauge. The client can track the overall _qps_ in one Gauge or in multiple Gagues (for example: One per Channel or Stub).
+ The framework periodically queries the _qps_ by calling the `GetAllGauges()` method (the framework assumes that all the returned Gauges are _qps_ Gauges) and uses this to determine if the stress test client is running or crashed or stalled.
+> *Note:* In this context, the term _**qps**_ means _interop test cases per second_ (not _messages per second_ or _rpc calls per second_)
+
+
+**Table 1:** Command line arguments that should be supported by the stress test client.
+
+>_**Note** The current C++ [stress client](https://github.com/grpc/grpc/blob/master/test/cpp/interop/stress_test.cc) supports more flags than those listed here but those flags will soon be deprecated_|
+
+Parameter | Description
+----------------------|---------------------------------
+`--server_address` | The stress client should accept a list of server addresses in the following format:<br> ```<name_1>:<port_1>,<name_2>:<port_2>..<name_N>:<port_N>``` <br> _Note:_ `<name>` can be either server name or IP address.<br><br>_Type:_ string <br>_default:_ ```localhost:8080``` <br>_Example:_ ``foo.foobar.com:8080,bar.foobar.com:8080`` <br><br> Currently, the stress test framework only passes one server address to the client.
+`--test_cases` | List of test cases along with the relative weights in the following format:<br> `<testcase_1:w_1>,<testcase_2:w_2>...<testcase_n:w_n>`. <br> The test cases names are the same as those currently used by the interop clients<br><br>_Type:_ string <br>_Example:_ `empty_unary:20,large_unary:10,empty_stream:70` <br>(The stress client would then make `empty_unary` calls 20% of the time, `large_unary` calls 10% of the time and `empty_stream` calls 70% of the time.) <br>_Note:_ The weights need not add up to 100.
+`--test_duration-secs` | The test duration in seconds. A value of -1 means that the test should run forever until forcefully terminated. <br>_Type:_ int <br>_default:_ -1
+`--num_channels_per_server` | Number of channels (i.e connections) to each server. <br> _Type:_ int <br> _default:_ 1 <br><br> _Note:_ Unfortunately, the term `channel` is used differently in `grpc-java` and `C based grpc`. In this context, this really means "number of connections to the server"
+`--num_stubs_per_channel ` | Number of client stubs per each connection to server.<br>_Type:_ int <br>_default:_ 1
+`--metrics_port` | The port at which the stress client exposes [QPS metrics](https://github.com/grpc/grpc/blob/master/src/proto/grpc/testing/metrics.proto). <br>_Type:_ int <br>_default:_ 8081
diff --git a/tools/run_tests/tests.json b/tools/run_tests/tests.json
index 34006b19f2..5f72b8c582 100644
--- a/tools/run_tests/tests.json
+++ b/tools/run_tests/tests.json
@@ -1094,7 +1094,7 @@
"flaky": false,
"gtest": false,
"language": "c",
- "name": "httpcli_format_request_test",
+ "name": "http_parser_test",
"platforms": [
"linux",
"mac",
@@ -1115,7 +1115,7 @@
"flaky": false,
"gtest": false,
"language": "c",
- "name": "httpcli_parser_test",
+ "name": "httpcli_format_request_test",
"platforms": [
"linux",
"mac",