diff options
author | Craig Tiller <ctiller@google.com> | 2015-05-12 09:51:22 -0700 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2015-05-12 09:51:22 -0700 |
commit | d8afa09a958aa89be1e9971bec0fc0d0d70e4ab6 (patch) | |
tree | e7ab2432c1a7f90d3859aff26e136112e1cb0fa5 /tools | |
parent | 8421678ed0bb8e0d40f78f1b7613566418f69844 (diff) | |
parent | 4491fbd0e9bcfe44d25339e3e919f208633f274f (diff) |
Merge github.com:grpc/grpc into timeouts-need-logs-too
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/buildgen/plugins/generate_vsprojects.py | 12 | ||||
-rwxr-xr-x | tools/gce_setup/cloud_prod_test.sh | 62 | ||||
-rwxr-xr-x | tools/gce_setup/grpc_docker.sh | 63 | ||||
-rwxr-xr-x | tools/gce_setup/interop_test.sh | 67 | ||||
-rwxr-xr-x | tools/profile_analyzer/profile_analyzer.py | 163 | ||||
-rwxr-xr-x | tools/run_tests/run_node.sh | 2 | ||||
-rw-r--r-- | tools/run_tests/tests.json | 223 |
7 files changed, 372 insertions, 220 deletions
diff --git a/tools/buildgen/plugins/generate_vsprojects.py b/tools/buildgen/plugins/generate_vsprojects.py index f00c176214..09a5bdbcc8 100755 --- a/tools/buildgen/plugins/generate_vsprojects.py +++ b/tools/buildgen/plugins/generate_vsprojects.py @@ -35,6 +35,10 @@ and "vsproject_dict", to be used by the visual studio generators. """ +import hashlib +import re + + def mako_plugin(dictionary): """The exported plugin code for generate_vsprojeccts @@ -53,6 +57,14 @@ def mako_plugin(dictionary): projects = [] projects.extend(libs) projects.extend(targets) + if dictionary.get('debug', False): + for target in projects: + if not target.get('vs_project_guid', None) and 'windows' in target.get('platforms', ['windows']): + name = target['name'] + guid = re.sub('(........)(....)(....)(....)(.*)', + r'{\1-\2-\3-\4-\5}', + hashlib.md5(name).hexdigest()) + target['vs_project_guid'] = guid.upper() # Exclude projects without a visual project guid, such as the tests. projects = [project for project in projects if project.get('vs_project_guid', None)] diff --git a/tools/gce_setup/cloud_prod_test.sh b/tools/gce_setup/cloud_prod_test.sh new file mode 100755 index 0000000000..94869ee9b6 --- /dev/null +++ b/tools/gce_setup/cloud_prod_test.sh @@ -0,0 +1,62 @@ +#!/bin/bash +# Copyright 2015, Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +thisfile=$(readlink -ne "${BASH_SOURCE[0]}") +test_case=$1 +client_vm=$2 +result=cloud_prod_result.$1 +cur=$(date "+%Y-%m-%d-%H-%M-%S") +log_link=https://pantheon.corp.google.com/m/cloudstorage/b/stoked-keyword-656-output/o/prod_result/$test_case/$cur + +main() { + source grpc_docker.sh + clients=(cxx java go ruby node csharp_mono python php) + for client in "${clients[@]}" + do + log_file_name=cloud_{$test_case}_{$client}.txt + if grpc_cloud_prod_test $test_case $client_vm $client > /tmp/$log_file_name 2>&1 + then + echo " ['$test_case', '$client', 'prod', true, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/$result.txt + else + echo " ['$test_case', '$client', 'prod', false, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/$result.txt + fi + gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/prod_result/$test_case/$cur/$log_file_name + rm /tmp/$log_file_name + done + if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then + cat pre.html /tmp/$result.txt post.html > /tmp/$result.html + gsutil cp /tmp/$result.html gs://stoked-keyword-656-output/prod_result/$test_case/$cur/$result.html + rm /tmp/$result.txt + rm /tmp/$result.html + fi +} + +set -x +main "$@" diff --git a/tools/gce_setup/grpc_docker.sh b/tools/gce_setup/grpc_docker.sh index d3a7bdef28..c49efbab60 100755 --- a/tools/gce_setup/grpc_docker.sh +++ b/tools/gce_setup/grpc_docker.sh @@ -384,6 +384,7 @@ grpc_interop_test_args() { [[ -n $1 ]] && { # client_type case $1 in cxx|go|java|node|php|python|ruby|csharp_mono) + grpc_client_platform='Docker' grpc_gen_test_cmd="grpc_interop_gen_$1_cmd" declare -F $grpc_gen_test_cmd >> /dev/null || { echo "-f: test_func for $1 => $grpc_gen_test_cmd is not defined" 1>&2 @@ -391,6 +392,11 @@ grpc_interop_test_args() { } shift ;; + csharp_dotnet) + grpc_client_platform='Windows' + grpc_gen_test_cmd="grpc_interop_gen_$1_cmd" + shift + ;; *) echo "bad client_type: $1" 1>&2 return 1 @@ -456,6 +462,7 @@ grpc_cloud_prod_test_args() { [[ -n $1 ]] && { # client_type case $1 in cxx|go|java|node|php|python|ruby|csharp_mono) + grpc_client_platform='Docker' grpc_gen_test_cmd="grpc_cloud_prod_gen_$1_cmd" declare -F $grpc_gen_test_cmd >> /dev/null || { echo "-f: test_func for $1 => $grpc_gen_test_cmd is not defined" 1>&2 @@ -463,6 +470,11 @@ grpc_cloud_prod_test_args() { } shift ;; + csharp_dotnet) + grpc_client_platform='Windows' + grpc_gen_test_cmd="grpc_cloud_prod_gen_$1_cmd" + shift + ;; *) echo "bad client_type: $1" 1>&2 return 1 @@ -851,12 +863,23 @@ grpc_launch_servers() { test_runner() { local project_opt="--project $grpc_project" local zone_opt="--zone $grpc_zone" - local ssh_cmd="bash -l -c \"$cmd\"" - echo "will run:" - echo " $ssh_cmd" - echo "on $host" [[ $dry_run == 1 ]] && return 0 # don't run the command on a dry run - gcloud compute $project_opt ssh $zone_opt $host --command "$cmd" & + if [ "$grpc_client_platform" != "Windows" ] + then + echo "will run:" + echo " $cmd" + echo "on $host" + gcloud compute $project_opt ssh $zone_opt $host --command "$cmd" & + else + # gcloud's auto-uploading of RSA keys doesn't work for Windows VMs. + # So we have a linux machine that is authorized to access the Windows + # machine through ssh and we use gcloud auth support to logon to the proxy. + echo "will run:" + echo " $cmd" + echo "on $host (through grpc-windows-proxy)" + gcloud compute $project_opt ssh $zone_opt stoked-keyword-656@grpc-windows-proxy --command "ssh $host '$cmd'" & + fi + # PID=$! echo "pid is $PID" for x in {0..5} @@ -924,7 +947,7 @@ grpc_interop_test() { local grpc_zone grpc_project dry_run # set by _grpc_set_project_and_zone # grpc_interop_test_args - local test_case host grpc_gen_test_cmd grpc_server grpc_port + local test_case host grpc_gen_test_cmd grpc_server grpc_port grpc_client_platform # set the project zone and check that all necessary args are provided _grpc_set_project_and_zone -f grpc_interop_test_args "$@" || return 1 @@ -966,7 +989,7 @@ grpc_cloud_prod_test() { local grpc_zone grpc_project dry_run # set by _grpc_set_project_and_zone # grpc_cloud_prod_test_args - local test_case host grpc_gen_test_cmd + local test_case host grpc_gen_test_cmd grpc_client_platform # set the project zone and check that all necessary args are provided _grpc_set_project_and_zone -f grpc_cloud_prod_test_args "$@" || return 1 @@ -1431,6 +1454,18 @@ grpc_interop_gen_csharp_mono_cmd() { echo $the_cmd } +# constructs the csharp-dotnet interop test cmd. +# +# call-seq: +# flags= .... # generic flags to include the command +# cmd=$($grpc_gen_test_cmd $flags) +grpc_interop_gen_csharp_dotnet_cmd() { + local set_workdir="cd /cygdrive/c/github/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug &&" + local test_script="./Grpc.IntegrationTesting.Client.exe --use_tls=true --use_test_ca=true"; + local the_cmd="$set_workdir $test_script $@"; + echo $the_cmd +} + # constructs the full dockerized csharp-mono gce=>prod interop test cmd. # # call-seq: @@ -1446,6 +1481,20 @@ grpc_cloud_prod_gen_csharp_mono_cmd() { echo $the_cmd } +# constructs the csharp-dotnet gce=>prod interop test cmd. +# +# call-seq: +# flags= .... # generic flags to include the command +# cmd=$($grpc_gen_test_cmd $flags) +grpc_cloud_prod_gen_csharp_dotnet_cmd() { + local set_workdir="cd /cygdrive/c/github/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug &&" + local test_script="./Grpc.IntegrationTesting.Client.exe --use_tls=true"; + local set_certfile="SSL_CERT_FILE=/cacerts/roots.pem " + local gfe_flags=$(_grpc_prod_gfe_flags); + local the_cmd="$set_workdir $set_certfile $test_script $gfe_flags $@"; + echo $the_cmd +} + # constructs the full dockerized csharp-mono service_account auth interop test cmd. # # call-seq: diff --git a/tools/gce_setup/interop_test.sh b/tools/gce_setup/interop_test.sh new file mode 100755 index 0000000000..037b117e1a --- /dev/null +++ b/tools/gce_setup/interop_test.sh @@ -0,0 +1,67 @@ +#!/bin/bash +# Copyright 2015, Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +thisfile=$(readlink -ne "${BASH_SOURCE[0]}") +test_case=$1 +client_vm=$2 +server_vm=$3 +result=interop_result.$1 +cur=$(date "+%Y-%m-%d-%H-%M-%S") +log_link=https://pantheon.corp.google.com/m/cloudstorage/b/stoked-keyword-656-output/o/interop_result/$test_case/$cur + +main() { + source grpc_docker.sh + clients=(cxx java go ruby node csharp_mono python php) + servers=(cxx java go ruby node python csharp_mono) + for client in "${clients[@]}" + do + for server in "${servers[@]}" + do + log_file_name=cloud_{$test_case}_{$client}_{$server}.txt + if grpc_interop_test $test_case $client_vm $client $server_vm $server> /tmp/$log_file_name 2>&1 + then + echo " ['$test_case', '$client', '$server', true, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/$result.txt + else + echo " ['$test_case', '$client', '$server', false, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/$result.txt + fi + gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/interop_result/$test_case/$cur/$log_file_name + rm /tmp/$log_file_name + done + done + if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then + cat pre.html /tmp/$result.txt post.html > /tmp/$result.html + gsutil cp /tmp/$result.html gs://stoked-keyword-656-output/interop_result/$test_case/$cur/$result.html + rm /tmp/$result.txt + rm /tmp/$result.html + fi +} + +set -x +main "$@" diff --git a/tools/profile_analyzer/profile_analyzer.py b/tools/profile_analyzer/profile_analyzer.py index 00b1079466..a78f84e5e6 100755 --- a/tools/profile_analyzer/profile_analyzer.py +++ b/tools/profile_analyzer/profile_analyzer.py @@ -39,8 +39,8 @@ Usage: import collections import itertools +import math import re -import sys # Create a regex to parse output of the C core basic profiler, # as defined in src/core/profiling/basic_timers.c. @@ -64,19 +64,68 @@ class ImportantMark(object): def entry(self): return self._entry - def append_post_entry(self, entry): - if self._n > 0: - self._post_stack.append(entry) + @property + def max_depth(self): + return self._n + + def append_post_entry(self, post_entry): + if self._n > 0 and post_entry.thread == self._entry.thread: + self._post_stack.append(post_entry) self._n -= 1 def get_deltas(self): pre_and_post_stacks = itertools.chain(self._pre_stack, self._post_stack) return collections.OrderedDict((stack_entry, - (self._entry.time - stack_entry.time)) + abs(self._entry.time - stack_entry.time)) for stack_entry in pre_and_post_stacks) -def entries(): - for line in sys.stdin: + +def print_block_statistics(block_times): + print '{:<12s} {:>12s} {:>12s} {:>12s} {:>12s}'.format( + 'Block tag', '50th p.', '90th p.', '95th p.', '99th p.') + for tag, tag_times in sorted(block_times.iteritems()): + times = sorted(tag_times) + print '{:<12d}: {:>12.3f} {:>12.3f} {:>12.3f} {:>12.3f}'.format( + tag, percentile(times, 50), percentile(times, 90), + percentile(times, 95), percentile(times, 99)) + print + +def print_grouped_imark_statistics(group_key, imarks_group): + values = collections.OrderedDict() + for imark in imarks_group: + deltas = imark.get_deltas() + for relative_entry, time_delta_us in deltas.iteritems(): + key = '{tag} {type} ({file}:{line})'.format(**relative_entry._asdict()) + l = values.setdefault(key, list()) + l.append(time_delta_us) + + print group_key + print '{:<50s} {:>12s} {:>12s} {:>12s} {:>12s}'.format( + 'Relative mark', '50th p.', '90th p.', '95th p.', '99th p.') + for key, time_values in values.iteritems(): + time_values = sorted(time_values) + print '{:<50s}: {:>12.3f} {:>12.3f} {:>12.3f} {:>12.3f}'.format( + key, percentile(time_values, 50), percentile(time_values, 90), + percentile(time_values, 95), percentile(time_values, 99)) + print + +def percentile(vals, percent): + """ Calculates the interpolated percentile given a sorted sequence and a + percent (in the usual 0-100 range).""" + assert vals, "Empty input sequence." + percent /= 100.0 + k = (len(vals)-1) * percent + f = math.floor(k) + c = math.ceil(k) + if f == c: + return vals[int(k)] + # else, interpolate + d0 = vals[int(f)] * (c-k) + d1 = vals[int(c)] * (k-f) + return d0 + d1 + +def entries(f): + for line in f: m = _RE_LINE.match(line) if not m: continue yield Entry(time=float(m.group(1)), @@ -87,53 +136,53 @@ def entries(): file=m.group(6), line=m.group(7)) -threads = collections.defaultdict(lambda: collections.defaultdict(list)) -times = collections.defaultdict(list) - -# Indexed by the mark's tag. Items in the value list correspond to the mark in -# different stack situations. -important_marks = collections.defaultdict(list) - -for entry in entries(): - thread = threads[entry.thread] - if entry.type == '{': - thread[entry.tag].append(entry) - if entry.type == '!': - # Save a snapshot of the current stack inside a new ImportantMark instance. - # Get all entries with type '{' from "thread". - stack = [e for entries_for_tag in thread.values() - for e in entries_for_tag if e.type == '{'] - important_marks[entry.tag].append(ImportantMark(entry, stack)) - elif entry.type == '}': - last = thread[entry.tag].pop() - times[entry.tag].append(entry.time - last.time) - # Update accounting for important marks. - for imarks_for_tag in important_marks.itervalues(): - for imark in imarks_for_tag: - imark.append_post_entry(entry) - -def percentile(vals, pct): - return sorted(vals)[int(len(vals) * pct / 100.0)] - -print 'tag 50%/90%/95%/99% us' -for tag in sorted(times.keys()): - vals = times[tag] - print '%d %.2f/%.2f/%.2f/%.2f' % (tag, - percentile(vals, 50), - percentile(vals, 90), - percentile(vals, 95), - percentile(vals, 99)) - -print -print 'Important marks:' -print '================' -for tag, imark_for_tag in important_marks.iteritems(): - for imark in imarks_for_tag: - deltas = imark.get_deltas() - print '{tag} @ {file}:{line}'.format(**imark.entry._asdict()) - for entry, time_delta_us in deltas.iteritems(): - format_dict = entry._asdict() - format_dict['time_delta_us'] = time_delta_us - print '{tag} {type} ({file}:{line}): {time_delta_us:12.3f} us'.format( - **format_dict) - print +def main(f): + percentiles = (50, 90, 95, 99) + threads = collections.defaultdict(lambda: collections.defaultdict(list)) + times = collections.defaultdict(list) + important_marks = collections.defaultdict(list) + stack_depth = collections.defaultdict(int) + for entry in entries(f): + thread = threads[entry.thread] + if entry.type == '{': + thread[entry.tag].append(entry) + stack_depth[entry.thread] += 1 + if entry.type == '!': + # Save a snapshot of the current stack inside a new ImportantMark instance. + # Get all entries _for any tag in the thread_. + stack = [e for entries_for_tag in thread.itervalues() + for e in entries_for_tag] + imark_group_key = '{tag}/{thread}@{file}:{line}'.format(**entry._asdict()) + important_marks[imark_group_key].append(ImportantMark(entry, stack)) + elif entry.type == '}': + last = thread[entry.tag].pop() + times[entry.tag].append(entry.time - last.time) + # only access the last "depth" imarks for the tag. + depth = stack_depth[entry.thread] + for imarks_group in important_marks.itervalues(): + for imark in imarks_group[-depth:]: + # if at a '}' deeper than where the current "imark" was found, ignore. + if depth > imark.max_depth: continue + imark.append_post_entry(entry) + stack_depth[entry.thread] -= 1 + + print + print 'Block marks:' + print '============' + print_block_statistics(times) + + print + print 'Important marks:' + print '================' + for group_key, imarks_group in important_marks.iteritems(): + print_grouped_imark_statistics(group_key, imarks_group) + + +if __name__ == '__main__': + # If invoked without arguments, read off sys.stdin. If one argument is given, + # take it as a file name and open it for reading. + import sys + f = sys.stdin + if len(sys.argv) == 2: + f = open(sys.argv[1], 'r') + main(f) diff --git a/tools/run_tests/run_node.sh b/tools/run_tests/run_node.sh index 3a82c04a8e..bfbe82b867 100755 --- a/tools/run_tests/run_node.sh +++ b/tools/run_tests/run_node.sh @@ -39,4 +39,4 @@ root=`pwd` export LD_LIBRARY_PATH=$root/libs/$CONFIG -$root/src/node/node_modules/mocha/bin/mocha $root/src/node/test +$root/src/node/node_modules/mocha/bin/mocha --timeout 4000 $root/src/node/test diff --git a/tools/run_tests/tests.json b/tools/run_tests/tests.json index 8c17c27189..e0b7ef16fb 100644 --- a/tools/run_tests/tests.json +++ b/tools/run_tests/tests.json @@ -158,7 +158,6 @@ "language": "c", "name": "fd_posix_test", "platforms": [ - "windows", "posix" ] }, @@ -167,7 +166,6 @@ "language": "c", "name": "fling_stream_test", "platforms": [ - "windows", "posix" ] }, @@ -176,7 +174,6 @@ "language": "c", "name": "fling_test", "platforms": [ - "windows", "posix" ] }, @@ -482,7 +479,6 @@ "language": "c", "name": "poll_kick_posix_test", "platforms": [ - "windows", "posix" ] }, @@ -518,7 +514,6 @@ "language": "c", "name": "tcp_client_posix_test", "platforms": [ - "windows", "posix" ] }, @@ -527,7 +522,6 @@ "language": "c", "name": "tcp_posix_test", "platforms": [ - "windows", "posix" ] }, @@ -536,7 +530,6 @@ "language": "c", "name": "tcp_server_posix_test", "platforms": [ - "windows", "posix" ] }, @@ -695,6 +688,15 @@ }, { "flaky": false, + "language": "c++", + "name": "thread_stress_test", + "platforms": [ + "windows", + "posix" + ] + }, + { + "flaky": false, "language": "c", "name": "chttp2_fake_security_bad_hostname_test", "platforms": [ @@ -885,7 +887,7 @@ { "flaky": false, "language": "c", - "name": "chttp2_fake_security_request_response_with_trailing_metadata_and_payload_test", + "name": "chttp2_fake_security_request_response_with_payload_and_call_creds_test", "platforms": [ "windows", "posix" @@ -1128,7 +1130,7 @@ { "flaky": false, "language": "c", - "name": "chttp2_fullstack_request_response_with_trailing_metadata_and_payload_test", + "name": "chttp2_fullstack_request_response_with_payload_and_call_creds_test", "platforms": [ "windows", "posix" @@ -1182,243 +1184,216 @@ { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_bad_hostname_test", + "name": "chttp2_fullstack_uds_posix_bad_hostname_test", "platforms": [ - "windows", "posix" ] }, { "flaky": true, "language": "c", - "name": "chttp2_fullstack_uds_cancel_after_accept_test", + "name": "chttp2_fullstack_uds_posix_cancel_after_accept_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_test", + "name": "chttp2_fullstack_uds_posix_cancel_after_accept_and_writes_closed_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_after_invoke_test", + "name": "chttp2_fullstack_uds_posix_cancel_after_invoke_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_before_invoke_test", + "name": "chttp2_fullstack_uds_posix_cancel_before_invoke_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_in_a_vacuum_test", + "name": "chttp2_fullstack_uds_posix_cancel_in_a_vacuum_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_census_simple_request_test", + "name": "chttp2_fullstack_uds_posix_census_simple_request_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_disappearing_server_test", + "name": "chttp2_fullstack_uds_posix_disappearing_server_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_test", + "name": "chttp2_fullstack_uds_posix_early_server_shutdown_finishes_inflight_calls_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_early_server_shutdown_finishes_tags_test", + "name": "chttp2_fullstack_uds_posix_early_server_shutdown_finishes_tags_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_empty_batch_test", + "name": "chttp2_fullstack_uds_posix_empty_batch_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_graceful_server_shutdown_test", + "name": "chttp2_fullstack_uds_posix_graceful_server_shutdown_test", "platforms": [ - "windows", "posix" ] }, { "flaky": true, "language": "c", - "name": "chttp2_fullstack_uds_invoke_large_request_test", + "name": "chttp2_fullstack_uds_posix_invoke_large_request_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_max_concurrent_streams_test", + "name": "chttp2_fullstack_uds_posix_max_concurrent_streams_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_max_message_length_test", + "name": "chttp2_fullstack_uds_posix_max_message_length_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_no_op_test", + "name": "chttp2_fullstack_uds_posix_no_op_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_ping_pong_streaming_test", + "name": "chttp2_fullstack_uds_posix_ping_pong_streaming_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_registered_call_test", + "name": "chttp2_fullstack_uds_posix_registered_call_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_test", + "name": "chttp2_fullstack_uds_posix_request_response_with_binary_metadata_and_payload_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_metadata_and_payload_test", + "name": "chttp2_fullstack_uds_posix_request_response_with_metadata_and_payload_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_payload_test", + "name": "chttp2_fullstack_uds_posix_request_response_with_payload_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_test", + "name": "chttp2_fullstack_uds_posix_request_response_with_payload_and_call_creds_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_with_large_metadata_test", + "name": "chttp2_fullstack_uds_posix_request_with_large_metadata_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_with_payload_test", + "name": "chttp2_fullstack_uds_posix_request_with_payload_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_simple_delayed_request_test", + "name": "chttp2_fullstack_uds_posix_simple_delayed_request_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_simple_request_test", + "name": "chttp2_fullstack_uds_posix_simple_request_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_simple_request_with_high_initial_sequence_number_test", + "name": "chttp2_fullstack_uds_posix_simple_request_with_high_initial_sequence_number_test", "platforms": [ - "windows", "posix" ] }, @@ -1614,7 +1589,7 @@ { "flaky": false, "language": "c", - "name": "chttp2_simple_ssl_fullstack_request_response_with_trailing_metadata_and_payload_test", + "name": "chttp2_simple_ssl_fullstack_request_response_with_payload_and_call_creds_test", "platforms": [ "windows", "posix" @@ -1857,7 +1832,7 @@ { "flaky": false, "language": "c", - "name": "chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_trailing_metadata_and_payload_test", + "name": "chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_payload_and_call_creds_test", "platforms": [ "windows", "posix" @@ -2100,7 +2075,7 @@ { "flaky": false, "language": "c", - "name": "chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_test", + "name": "chttp2_socket_pair_request_response_with_payload_and_call_creds_test", "platforms": [ "windows", "posix" @@ -2343,7 +2318,7 @@ { "flaky": false, "language": "c", - "name": "chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_test", + "name": "chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_and_call_creds_test", "platforms": [ "windows", "posix" @@ -2586,15 +2561,6 @@ { "flaky": false, "language": "c", - "name": "chttp2_fullstack_request_response_with_trailing_metadata_and_payload_unsecure_test", - "platforms": [ - "windows", - "posix" - ] - }, - { - "flaky": false, - "language": "c", "name": "chttp2_fullstack_request_with_large_metadata_unsecure_test", "platforms": [ "windows", @@ -2640,243 +2606,208 @@ { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_bad_hostname_unsecure_test", + "name": "chttp2_fullstack_uds_posix_bad_hostname_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_after_accept_unsecure_test", + "name": "chttp2_fullstack_uds_posix_cancel_after_accept_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test", + "name": "chttp2_fullstack_uds_posix_cancel_after_accept_and_writes_closed_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_after_invoke_unsecure_test", + "name": "chttp2_fullstack_uds_posix_cancel_after_invoke_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_before_invoke_unsecure_test", + "name": "chttp2_fullstack_uds_posix_cancel_before_invoke_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test", + "name": "chttp2_fullstack_uds_posix_cancel_in_a_vacuum_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_census_simple_request_unsecure_test", + "name": "chttp2_fullstack_uds_posix_census_simple_request_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_disappearing_server_unsecure_test", + "name": "chttp2_fullstack_uds_posix_disappearing_server_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test", + "name": "chttp2_fullstack_uds_posix_early_server_shutdown_finishes_inflight_calls_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test", + "name": "chttp2_fullstack_uds_posix_early_server_shutdown_finishes_tags_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_empty_batch_unsecure_test", + "name": "chttp2_fullstack_uds_posix_empty_batch_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test", + "name": "chttp2_fullstack_uds_posix_graceful_server_shutdown_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": true, "language": "c", - "name": "chttp2_fullstack_uds_invoke_large_request_unsecure_test", + "name": "chttp2_fullstack_uds_posix_invoke_large_request_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_max_concurrent_streams_unsecure_test", + "name": "chttp2_fullstack_uds_posix_max_concurrent_streams_unsecure_test", "platforms": [ - "windows", - "posix" - ] - }, - { - "flaky": false, - "language": "c", - "name": "chttp2_fullstack_uds_max_message_length_unsecure_test", - "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_no_op_unsecure_test", + "name": "chttp2_fullstack_uds_posix_max_message_length_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_ping_pong_streaming_unsecure_test", + "name": "chttp2_fullstack_uds_posix_no_op_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_registered_call_unsecure_test", + "name": "chttp2_fullstack_uds_posix_ping_pong_streaming_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test", + "name": "chttp2_fullstack_uds_posix_registered_call_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test", + "name": "chttp2_fullstack_uds_posix_request_response_with_binary_metadata_and_payload_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_payload_unsecure_test", + "name": "chttp2_fullstack_uds_posix_request_response_with_metadata_and_payload_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_unsecure_test", + "name": "chttp2_fullstack_uds_posix_request_response_with_payload_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_with_large_metadata_unsecure_test", + "name": "chttp2_fullstack_uds_posix_request_with_large_metadata_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_request_with_payload_unsecure_test", + "name": "chttp2_fullstack_uds_posix_request_with_payload_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_simple_delayed_request_unsecure_test", + "name": "chttp2_fullstack_uds_posix_simple_delayed_request_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_simple_request_unsecure_test", + "name": "chttp2_fullstack_uds_posix_simple_request_unsecure_test", "platforms": [ - "windows", "posix" ] }, { "flaky": false, "language": "c", - "name": "chttp2_fullstack_uds_simple_request_with_high_initial_sequence_number_unsecure_test", + "name": "chttp2_fullstack_uds_posix_simple_request_with_high_initial_sequence_number_unsecure_test", "platforms": [ - "windows", "posix" ] }, @@ -3072,15 +3003,6 @@ { "flaky": false, "language": "c", - "name": "chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_unsecure_test", - "platforms": [ - "windows", - "posix" - ] - }, - { - "flaky": false, - "language": "c", "name": "chttp2_socket_pair_request_with_large_metadata_unsecure_test", "platforms": [ "windows", @@ -3315,15 +3237,6 @@ { "flaky": false, "language": "c", - "name": "chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_unsecure_test", - "platforms": [ - "windows", - "posix" - ] - }, - { - "flaky": false, - "language": "c", "name": "chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test", "platforms": [ "windows", |