Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion test/cpp/interop/client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,8 @@ int main(int argc, char** argv) {
new grpc::testing::MetadataAndStatusLoggerInterceptorFactory());
}
if (test_case == "mcs_cs") {
arguments.SetServiceConfigJSON("{\"connectionScaling\":{\"maxConnectionsPerSubchannel\": 2}}");
arguments.SetServiceConfigJSON(
"{\"connectionScaling\":{\"maxConnectionsPerSubchannel\": 2}}");
} else {
std::string service_config_json =
absl::GetFlag(FLAGS_service_config_json);
Expand Down
7 changes: 5 additions & 2 deletions tools/run_tests/python_utils/jobset.py
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ def start(self):
cmdline = ["time", "-p"] + cmdline
else:
measure_cpu_costs = False
print('Starting subprocess for cmdline: ' + str(cmdline), True)
print("Starting subprocess for cmdline: " + str(cmdline), True)
try_start = lambda: subprocess.Popen(
args=cmdline,
stderr=subprocess.STDOUT,
Expand Down Expand Up @@ -694,7 +694,10 @@ def run(
max_time,
)
for cmdline, remaining in tag_remaining(cmdlines):
print('jobset.run calling start on cmdline, shortname being: ' + cmdline.shortname)
print(
"jobset.run calling start on cmdline, shortname being: "
+ cmdline.shortname
)
if not js.start(cmdline):
break
if remaining is not None:
Expand Down
49 changes: 31 additions & 18 deletions tools/run_tests/run_interop_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -1129,7 +1129,11 @@ def cloud_to_cloud_jobspec(


def server_jobspec(
language, docker_image, transport_security="tls", manual_cmd_log=None, use_mcs=False
language,
docker_image,
transport_security="tls",
manual_cmd_log=None,
use_mcs=False,
):
"""Create jobspec for running a server"""
container_name = dockerjob.random_name(
Expand All @@ -1152,11 +1156,11 @@ def server_jobspec(
server_cmd += ["--use_mcs=true"]
cmdline = bash_cmdline(language.server_cmd(server_cmd))
for cmd in cmdline:
print('server_jobspec: cmd: ' + cmd)
if hasattr(cmd, 'shortname'):
print('cmd has shortname: ' + cmd.shortname)
else:
print('cmd doesnt have shortname.')
print("server_jobspec: cmd: " + cmd)
if hasattr(cmd, "shortname"):
print("cmd has shortname: " + cmd.shortname)
else:
print("cmd doesnt have shortname.")
environ = language.global_env()
docker_args = ["--name=%s" % container_name]
if language.safename == "http2":
Expand Down Expand Up @@ -1813,39 +1817,45 @@ def aggregate_http2_results(stdout):

if args.mcs_cs:
if not args.use_docker:
print('MCS connection scaling test can only be run with --use-docker')
print(
"MCS connection scaling test can only be run with --use-docker"
)
else:
languages_for_mcs_cs = set(
_LANGUAGES[l]
for l in _LANGUAGES_WITH_HTTP2_CLIENTS_FOR_HTTP2_SERVER_TEST_CASES
if "all" in args.language or l in args.language
)
if len(languages_for_mcs_cs) > 0:
print('Using java for MCS connection scaling server ignoring any args for server languages')
print(
"Using java for MCS connection scaling server ignoring any args for server languages"
)
mcs_server_jobspec = server_jobspec(
_LANGUAGES['java'],
docker_images.get('java'),
_LANGUAGES["java"],
docker_images.get("java"),
args.transport_security,
manual_cmd_log=server_manual_cmd_log,
use_mcs=True,
)
mcs_server_job = dockerjob.DockerJob(mcs_server_jobspec)

for language in languages_for_mcs_cs:
test_job = cloud_to_cloud_jobspec(
language,
'mcs_cs',
'java-mcs',
'localhost',
"mcs_cs",
"java-mcs",
"localhost",
mcs_server_job.mapped_port(_DEFAULT_SERVER_PORT),
docker_image=docker_images.get(str(language)),
transport_security=args.transport_security,
manual_cmd_log=client_manual_cmd_log,
)
jobs.append(test_job)
else:
print('MCS connection scaling tests will be skipped since none of the supported client languages for MCS connection scaling testcases was specified')

print(
"MCS connection scaling tests will be skipped since none of the supported client languages for MCS connection scaling testcases was specified"
)

if not jobs:
print("No jobs to run.")
for image in docker_images.values():
Expand All @@ -1856,15 +1866,18 @@ def aggregate_http2_results(stdout):
print("All tests will skipped --manual_run option is active.")

if args.verbose:
print(str(len(jobs)) + " jobs to run: \n%s\n" % "\n".join(str(job) for job in jobs))
print(
str(len(jobs))
+ " jobs to run: \n%s\n" % "\n".join(str(job) for job in jobs)
)

num_failures, resultset = jobset.run(
jobs,
newline_on_success=True,
maxjobs=args.jobs,
skip_jobs=args.manual_run,
)
print('num_failures from jobset.run: ' + str(num_failures))
print("num_failures from jobset.run: " + str(num_failures))
if args.bq_result_table and resultset:
upload_interop_results_to_bq(resultset, args.bq_result_table)
if num_failures:
Expand Down