Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 90bb7bd

Browse files
authoredApr 14, 2017
Merge pull request grpc#10449 from ctiller/minimal_test
Add a test of minimal stacks, and make it pass
2 parents b575394 + 58e6d13 commit 90bb7bd

File tree

77 files changed

+1636
-656
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+1636
-656
lines changed
 

‎BUILD

+54-10
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ grpc_cc_library(
7777
"grpc_transport_chttp2_client_secure",
7878
"grpc_transport_chttp2_server_insecure",
7979
"grpc_transport_chttp2_server_secure",
80+
"grpc_message_size_filter",
81+
"grpc_deadline_filter",
8082
],
8183
)
8284

@@ -91,6 +93,7 @@ grpc_cc_library(
9193
"grpc_base",
9294
"grpc_transport_chttp2_client_secure",
9395
"grpc_transport_cronet_client_secure",
96+
"grpc_http_filters",
9497
],
9598
)
9699

@@ -115,6 +118,8 @@ grpc_cc_library(
115118
"grpc_resolver_sockaddr",
116119
"grpc_transport_chttp2_client_insecure",
117120
"grpc_transport_chttp2_server_insecure",
121+
"grpc_message_size_filter",
122+
"grpc_deadline_filter",
118123
],
119124
)
120125

@@ -451,15 +456,10 @@ grpc_cc_library(
451456
"src/core/lib/channel/channel_args.c",
452457
"src/core/lib/channel/channel_stack.c",
453458
"src/core/lib/channel/channel_stack_builder.c",
454-
"src/core/lib/channel/compress_filter.c",
455459
"src/core/lib/channel/connected_channel.c",
456-
"src/core/lib/channel/deadline_filter.c",
457460
"src/core/lib/channel/handshaker.c",
458461
"src/core/lib/channel/handshaker_factory.c",
459462
"src/core/lib/channel/handshaker_registry.c",
460-
"src/core/lib/channel/http_client_filter.c",
461-
"src/core/lib/channel/http_server_filter.c",
462-
"src/core/lib/channel/message_size_filter.c",
463463
"src/core/lib/compression/compression.c",
464464
"src/core/lib/compression/message_compress.c",
465465
"src/core/lib/debug/trace.c",
@@ -578,16 +578,11 @@ grpc_cc_library(
578578
"src/core/lib/channel/channel_args.h",
579579
"src/core/lib/channel/channel_stack.h",
580580
"src/core/lib/channel/channel_stack_builder.h",
581-
"src/core/lib/channel/compress_filter.h",
582581
"src/core/lib/channel/connected_channel.h",
583582
"src/core/lib/channel/context.h",
584-
"src/core/lib/channel/deadline_filter.h",
585583
"src/core/lib/channel/handshaker.h",
586584
"src/core/lib/channel/handshaker_factory.h",
587585
"src/core/lib/channel/handshaker_registry.h",
588-
"src/core/lib/channel/http_client_filter.h",
589-
"src/core/lib/channel/http_server_filter.h",
590-
"src/core/lib/channel/message_size_filter.h",
591586
"src/core/lib/compression/algorithm_metadata.h",
592587
"src/core/lib/compression/message_compress.h",
593588
"src/core/lib/debug/trace.h",
@@ -756,6 +751,7 @@ grpc_cc_library(
756751
language = "c",
757752
deps = [
758753
"grpc_base",
754+
"grpc_deadline_filter",
759755
],
760756
)
761757

@@ -773,6 +769,53 @@ grpc_cc_library(
773769
],
774770
)
775771

772+
grpc_cc_library(
773+
name = "grpc_deadline_filter",
774+
srcs = [
775+
"src/core/ext/filters/deadline/deadline_filter.c",
776+
],
777+
hdrs = [
778+
"src/core/ext/filters/deadline/deadline_filter.h",
779+
],
780+
language = "c",
781+
deps = [
782+
"grpc_base",
783+
],
784+
)
785+
786+
grpc_cc_library(
787+
name = "grpc_message_size_filter",
788+
srcs = [
789+
"src/core/ext/filters/message_size/message_size_filter.c",
790+
],
791+
hdrs = [
792+
"src/core/ext/filters/message_size/message_size_filter.h",
793+
],
794+
language = "c",
795+
deps = [
796+
"grpc_base",
797+
],
798+
)
799+
800+
grpc_cc_library(
801+
name = "grpc_http_filters",
802+
hdrs = [
803+
"src/core/ext/filters/http/message_compress/message_compress_filter.h",
804+
"src/core/ext/filters/http/client/http_client_filter.h",
805+
"src/core/ext/filters/http/server/http_server_filter.h",
806+
],
807+
srcs = [
808+
"src/core/ext/filters/http/message_compress/message_compress_filter.c",
809+
"src/core/ext/filters/http/client/http_client_filter.c",
810+
"src/core/ext/filters/http/server/http_server_filter.c",
811+
"src/core/ext/filters/http/http_filters_plugin.c"
812+
],
813+
language = "c",
814+
deps = [
815+
"grpc_base",
816+
],
817+
)
818+
776819
grpc_cc_library(
777820
name = "grpc_codegen",
778821
language = "c",
@@ -1035,6 +1078,7 @@ grpc_cc_library(
10351078
deps = [
10361079
"grpc_base",
10371080
"grpc_transport_chttp2_alpn",
1081+
"grpc_http_filters",
10381082
],
10391083
)
10401084

‎CMakeLists.txt

+54-35
Original file line numberDiff line numberDiff line change
@@ -471,6 +471,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX)
471471
add_dependencies(buildtests_c memory_profile_test)
472472
endif()
473473
add_dependencies(buildtests_c message_compress_test)
474+
add_dependencies(buildtests_c minimal_stack_is_minimal_test)
474475
add_dependencies(buildtests_c mlog_test)
475476
add_dependencies(buildtests_c multiple_server_queues_test)
476477
add_dependencies(buildtests_c murmur_hash_test)
@@ -913,15 +914,10 @@ add_library(grpc
913914
src/core/lib/channel/channel_args.c
914915
src/core/lib/channel/channel_stack.c
915916
src/core/lib/channel/channel_stack_builder.c
916-
src/core/lib/channel/compress_filter.c
917917
src/core/lib/channel/connected_channel.c
918-
src/core/lib/channel/deadline_filter.c
919918
src/core/lib/channel/handshaker.c
920919
src/core/lib/channel/handshaker_factory.c
921920
src/core/lib/channel/handshaker_registry.c
922-
src/core/lib/channel/http_client_filter.c
923-
src/core/lib/channel/http_server_filter.c
924-
src/core/lib/channel/message_size_filter.c
925921
src/core/lib/compression/compression.c
926922
src/core/lib/compression/message_compress.c
927923
src/core/lib/debug/trace.c
@@ -1058,6 +1054,10 @@ add_library(grpc
10581054
src/core/ext/transport/chttp2/transport/varint.c
10591055
src/core/ext/transport/chttp2/transport/writing.c
10601056
src/core/ext/transport/chttp2/alpn/alpn.c
1057+
src/core/ext/filters/http/client/http_client_filter.c
1058+
src/core/ext/filters/http/http_filters_plugin.c
1059+
src/core/ext/filters/http/message_compress/message_compress_filter.c
1060+
src/core/ext/filters/http/server/http_server_filter.c
10611061
src/core/lib/http/httpcli_security_connector.c
10621062
src/core/lib/security/context/security_context.c
10631063
src/core/lib/security/credentials/composite/composite_credentials.c
@@ -1107,6 +1107,7 @@ add_library(grpc
11071107
src/core/ext/filters/client_channel/subchannel.c
11081108
src/core/ext/filters/client_channel/subchannel_index.c
11091109
src/core/ext/filters/client_channel/uri_parser.c
1110+
src/core/ext/filters/deadline/deadline_filter.c
11101111
src/core/ext/transport/chttp2/client/chttp2_connector.c
11111112
src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
11121113
src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
@@ -1143,6 +1144,7 @@ add_library(grpc
11431144
src/core/ext/census/trace_context.c
11441145
src/core/ext/census/tracing.c
11451146
src/core/ext/filters/max_age/max_age_filter.c
1147+
src/core/ext/filters/message_size/message_size_filter.c
11461148
src/core/plugin_registry/grpc_plugin_registry.c
11471149
)
11481150

@@ -1237,15 +1239,10 @@ add_library(grpc_cronet
12371239
src/core/lib/channel/channel_args.c
12381240
src/core/lib/channel/channel_stack.c
12391241
src/core/lib/channel/channel_stack_builder.c
1240-
src/core/lib/channel/compress_filter.c
12411242
src/core/lib/channel/connected_channel.c
1242-
src/core/lib/channel/deadline_filter.c
12431243
src/core/lib/channel/handshaker.c
12441244
src/core/lib/channel/handshaker_factory.c
12451245
src/core/lib/channel/handshaker_registry.c
1246-
src/core/lib/channel/http_client_filter.c
1247-
src/core/lib/channel/http_server_filter.c
1248-
src/core/lib/channel/message_size_filter.c
12491246
src/core/lib/compression/compression.c
12501247
src/core/lib/compression/message_compress.c
12511248
src/core/lib/debug/trace.c
@@ -1385,6 +1382,10 @@ add_library(grpc_cronet
13851382
src/core/ext/transport/chttp2/transport/varint.c
13861383
src/core/ext/transport/chttp2/transport/writing.c
13871384
src/core/ext/transport/chttp2/alpn/alpn.c
1385+
src/core/ext/filters/http/client/http_client_filter.c
1386+
src/core/ext/filters/http/http_filters_plugin.c
1387+
src/core/ext/filters/http/message_compress/message_compress_filter.c
1388+
src/core/ext/filters/http/server/http_server_filter.c
13881389
src/core/ext/filters/client_channel/channel_connectivity.c
13891390
src/core/ext/filters/client_channel/client_channel.c
13901391
src/core/ext/filters/client_channel/client_channel_factory.c
@@ -1405,6 +1406,7 @@ add_library(grpc_cronet
14051406
src/core/ext/filters/client_channel/subchannel.c
14061407
src/core/ext/filters/client_channel/subchannel_index.c
14071408
src/core/ext/filters/client_channel/uri_parser.c
1409+
src/core/ext/filters/deadline/deadline_filter.c
14081410
src/core/lib/http/httpcli_security_connector.c
14091411
src/core/lib/security/context/security_context.c
14101412
src/core/lib/security/credentials/composite/composite_credentials.c
@@ -1547,15 +1549,10 @@ add_library(grpc_test_util
15471549
src/core/lib/channel/channel_args.c
15481550
src/core/lib/channel/channel_stack.c
15491551
src/core/lib/channel/channel_stack_builder.c
1550-
src/core/lib/channel/compress_filter.c
15511552
src/core/lib/channel/connected_channel.c
1552-
src/core/lib/channel/deadline_filter.c
15531553
src/core/lib/channel/handshaker.c
15541554
src/core/lib/channel/handshaker_factory.c
15551555
src/core/lib/channel/handshaker_registry.c
1556-
src/core/lib/channel/http_client_filter.c
1557-
src/core/lib/channel/http_server_filter.c
1558-
src/core/lib/channel/message_size_filter.c
15591556
src/core/lib/compression/compression.c
15601557
src/core/lib/compression/message_compress.c
15611558
src/core/lib/debug/trace.c
@@ -1808,15 +1805,10 @@ add_library(grpc_unsecure
18081805
src/core/lib/channel/channel_args.c
18091806
src/core/lib/channel/channel_stack.c
18101807
src/core/lib/channel/channel_stack_builder.c
1811-
src/core/lib/channel/compress_filter.c
18121808
src/core/lib/channel/connected_channel.c
1813-
src/core/lib/channel/deadline_filter.c
18141809
src/core/lib/channel/handshaker.c
18151810
src/core/lib/channel/handshaker_factory.c
18161811
src/core/lib/channel/handshaker_registry.c
1817-
src/core/lib/channel/http_client_filter.c
1818-
src/core/lib/channel/http_server_filter.c
1819-
src/core/lib/channel/message_size_filter.c
18201812
src/core/lib/compression/compression.c
18211813
src/core/lib/compression/message_compress.c
18221814
src/core/lib/debug/trace.c
@@ -1954,6 +1946,10 @@ add_library(grpc_unsecure
19541946
src/core/ext/transport/chttp2/transport/varint.c
19551947
src/core/ext/transport/chttp2/transport/writing.c
19561948
src/core/ext/transport/chttp2/alpn/alpn.c
1949+
src/core/ext/filters/http/client/http_client_filter.c
1950+
src/core/ext/filters/http/http_filters_plugin.c
1951+
src/core/ext/filters/http/message_compress/message_compress_filter.c
1952+
src/core/ext/filters/http/server/http_server_filter.c
19571953
src/core/ext/transport/chttp2/server/chttp2_server.c
19581954
src/core/ext/transport/chttp2/client/insecure/channel_create.c
19591955
src/core/ext/transport/chttp2/client/insecure/channel_create_posix.c
@@ -1978,6 +1974,7 @@ add_library(grpc_unsecure
19781974
src/core/ext/filters/client_channel/subchannel.c
19791975
src/core/ext/filters/client_channel/subchannel_index.c
19801976
src/core/ext/filters/client_channel/uri_parser.c
1977+
src/core/ext/filters/deadline/deadline_filter.c
19811978
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.c
19821979
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.c
19831980
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.c
@@ -2009,6 +2006,7 @@ add_library(grpc_unsecure
20092006
src/core/ext/census/trace_context.c
20102007
src/core/ext/census/tracing.c
20112008
src/core/ext/filters/max_age/max_age_filter.c
2009+
src/core/ext/filters/message_size/message_size_filter.c
20122010
src/core/plugin_registry/grpc_unsecure_plugin_registry.c
20132011
)
20142012

@@ -2226,15 +2224,10 @@ add_library(grpc++
22262224
src/core/lib/channel/channel_args.c
22272225
src/core/lib/channel/channel_stack.c
22282226
src/core/lib/channel/channel_stack_builder.c
2229-
src/core/lib/channel/compress_filter.c
22302227
src/core/lib/channel/connected_channel.c
2231-
src/core/lib/channel/deadline_filter.c
22322228
src/core/lib/channel/handshaker.c
22332229
src/core/lib/channel/handshaker_factory.c
22342230
src/core/lib/channel/handshaker_registry.c
2235-
src/core/lib/channel/http_client_filter.c
2236-
src/core/lib/channel/http_server_filter.c
2237-
src/core/lib/channel/message_size_filter.c
22382231
src/core/lib/compression/compression.c
22392232
src/core/lib/compression/message_compress.c
22402233
src/core/lib/debug/trace.c
@@ -2557,15 +2550,10 @@ add_library(grpc++_cronet
25572550
src/core/lib/channel/channel_args.c
25582551
src/core/lib/channel/channel_stack.c
25592552
src/core/lib/channel/channel_stack_builder.c
2560-
src/core/lib/channel/compress_filter.c
25612553
src/core/lib/channel/connected_channel.c
2562-
src/core/lib/channel/deadline_filter.c
25632554
src/core/lib/channel/handshaker.c
25642555
src/core/lib/channel/handshaker_factory.c
25652556
src/core/lib/channel/handshaker_registry.c
2566-
src/core/lib/channel/http_client_filter.c
2567-
src/core/lib/channel/http_server_filter.c
2568-
src/core/lib/channel/message_size_filter.c
25692557
src/core/lib/compression/compression.c
25702558
src/core/lib/compression/message_compress.c
25712559
src/core/lib/debug/trace.c
@@ -2708,6 +2696,10 @@ add_library(grpc++_cronet
27082696
src/core/ext/transport/chttp2/transport/varint.c
27092697
src/core/ext/transport/chttp2/transport/writing.c
27102698
src/core/ext/transport/chttp2/alpn/alpn.c
2699+
src/core/ext/filters/http/client/http_client_filter.c
2700+
src/core/ext/filters/http/http_filters_plugin.c
2701+
src/core/ext/filters/http/message_compress/message_compress_filter.c
2702+
src/core/ext/filters/http/server/http_server_filter.c
27112703
src/core/ext/filters/client_channel/channel_connectivity.c
27122704
src/core/ext/filters/client_channel/client_channel.c
27132705
src/core/ext/filters/client_channel/client_channel_factory.c
@@ -2728,6 +2720,7 @@ add_library(grpc++_cronet
27282720
src/core/ext/filters/client_channel/subchannel.c
27292721
src/core/ext/filters/client_channel/subchannel_index.c
27302722
src/core/ext/filters/client_channel/uri_parser.c
2723+
src/core/ext/filters/deadline/deadline_filter.c
27312724
src/core/ext/transport/chttp2/server/insecure/server_chttp2.c
27322725
src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.c
27332726
src/core/ext/transport/chttp2/server/chttp2_server.c
@@ -3323,15 +3316,10 @@ add_library(grpc++_unsecure
33233316
src/core/lib/channel/channel_args.c
33243317
src/core/lib/channel/channel_stack.c
33253318
src/core/lib/channel/channel_stack_builder.c
3326-
src/core/lib/channel/compress_filter.c
33273319
src/core/lib/channel/connected_channel.c
3328-
src/core/lib/channel/deadline_filter.c
33293320
src/core/lib/channel/handshaker.c
33303321
src/core/lib/channel/handshaker_factory.c
33313322
src/core/lib/channel/handshaker_registry.c
3332-
src/core/lib/channel/http_client_filter.c
3333-
src/core/lib/channel/http_server_filter.c
3334-
src/core/lib/channel/message_size_filter.c
33353323
src/core/lib/compression/compression.c
33363324
src/core/lib/compression/message_compress.c
33373325
src/core/lib/debug/trace.c
@@ -7458,6 +7446,37 @@ target_link_libraries(message_compress_test
74587446
endif (gRPC_BUILD_TESTS)
74597447
if (gRPC_BUILD_TESTS)
74607448

7449+
add_executable(minimal_stack_is_minimal_test
7450+
test/core/channel/minimal_stack_is_minimal_test.c
7451+
)
7452+
7453+
7454+
target_include_directories(minimal_stack_is_minimal_test
7455+
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
7456+
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
7457+
PRIVATE ${BORINGSSL_ROOT_DIR}/include
7458+
PRIVATE ${PROTOBUF_ROOT_DIR}/src
7459+
PRIVATE ${BENCHMARK_ROOT_DIR}/include
7460+
PRIVATE ${ZLIB_ROOT_DIR}
7461+
PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
7462+
PRIVATE ${CARES_BUILD_INCLUDE_DIR}
7463+
PRIVATE ${CARES_INCLUDE_DIR}
7464+
PRIVATE ${CARES_PLATFORM_INCLUDE_DIR}
7465+
PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/cares/cares
7466+
PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/third_party/gflags/include
7467+
)
7468+
7469+
target_link_libraries(minimal_stack_is_minimal_test
7470+
${_gRPC_ALLTARGETS_LIBRARIES}
7471+
grpc_test_util
7472+
grpc
7473+
gpr_test_util
7474+
gpr
7475+
)
7476+
7477+
endif (gRPC_BUILD_TESTS)
7478+
if (gRPC_BUILD_TESTS)
7479+
74617480
add_executable(mlog_test
74627481
test/core/census/mlog_test.c
74637482
)

0 commit comments

Comments
 (0)