Mark D. Roth
ece8fd6642
Change transport connectivity watch API to not be lossy.
5 years ago
Matthew Stevenson
10a39b77c6
Implemented changes outlined in addendum to design doc.
5 years ago
Ashitha Santhosh
8695c464dc
Expose max protected frame size value for testing.
5 years ago
Hope Casey-Allen
0f116eb282
Fix
5 years ago
Vijay Pai
5d7e4bb301
Stop using deprecated gtest macros
5 years ago
yang-g
49b796eeb1
Clean up the test
5 years ago
yang-g
76308c0c9a
Fix sanity_check and add a test
5 years ago
Jan Tattermusch
6ebc1c616f
set uses_polling=False for some bazel tests
5 years ago
Matthew Stevenson
5639867c2b
Clang changes.
5 years ago
Matthew Stevenson
8e09d8745d
Implementing further comments by Yang.
5 years ago
Hope Casey-Allen
2af922e8c3
Skip service config tests for gcc4.8 and below
5 years ago
Matthew Stevenson
0a054cc6ea
Implementing Yang's secound round of comments.
5 years ago
Matthew Stevenson
96c24347f7
Refactored the configs, per Yang's suggestions.
5 years ago
Lidi Zheng
781b12023a
Fix import failure due to 'visibility = ["//visibility:public"]'
5 years ago
Juanli Shen
40c0519ad0
Move xds protos to testing/
5 years ago
Matthew Stevenson
282aef6031
Minor fixes revealed from developping the end-to-end tests.
5 years ago
Juanli Shen
7be5d098cf
Tune xds test
5 years ago
Soheil Hassas Yeganeh
9b9764cb2a
Fix build error in SSL fuzzer.
5 years ago
Soheil Hassas Yeganeh
35e2760ffa
Add a fast path to allocate slices in the resource quota.
...
Currently, we are always scheduling a callback to run the allocation.
Instead, this patch adds a fastpath so that TCP can read the socket inline,
instead of waiting for the exec context to flush.
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/64/2 [polls/iter:12 ] 65.3µs ± 0% 64.7µs ± 1% -0.92% (p=0.032 n=4+5)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/0/2 [polls/iter:12.0002 ] 61.4µs ± 4% 57.3µs ±13% -6.66% (p=0.030 n=5+7)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/1/2 [polls/iter:12.0002 ] 61.7µs ± 1% 60.8µs ± 1% -1.49% (p=0.003 n=9+4)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/32768/2 [polls/iter:12.0002 ] 114µs ± 2% 112µs ± 0% -2.09% (p=0.030 n=10+2)
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/1/2 [polls/iter:12.0002 ] 62.9µs ± 0% 62.0µs ± 1% -1.32% (p=0.001 n=7+6)
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/64/2 [polls/iter:12.0002 ] 66.5µs ± 3% 64.4µs ± 1% -3.20% (p=0.016 n=5+4)
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/512/2 [polls/iter:12 ] 66.1µs ± 1% 65.2µs ± 1% -1.30% (p=0.003 n=8+5)
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/4096/2 [polls/iter:12 ] 72.1µs ± 4% 70.8µs ± 1% -1.92% (p=0.004 n=9+5)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/0/2 [polls/iter:12.0001 ] 60.4µs ± 1% 59.4µs ± 0% -1.55% (p=0.004 n=6+5)
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/8/2 [polls/iter:12 ] 63.6µs ± 1% 62.2µs ± 1% -2.13% (p=0.001 n=7+6)
BM_StreamingPingPongMsgs<TCP, NoOpMutator, NoOpMutator>/4096 [polls/iter:4.00008 ] 20.9µs ± 1% 19.8µs ±13% -5.30% (p=0.029 n=4+4)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/0/1 [polls/iter:8.00014 ] 44.4µs ± 1% 41.9µs ±13% -5.51% (p=0.010 n=6+4)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/8/2 [polls/iter:12.0001 ] 62.1µs ± 0% 61.1µs ± 1% -1.56% (p=0.036 n=3+5)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/64/2 [polls/iter:12.0002 ] 64.0µs ± 0% 63.3µs ± 0% -1.14% (p=0.004 n=5+6)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/1/2 [polls/iter:12 ] 62.0µs ± 1% 61.0µs ± 1% -1.61% (p=0.032 n=4+5)
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/0/2 [polls/iter:12.0002 ] 62.4µs ± 4% 60.6µs ± 1% -2.82% (p=0.003 n=7+5)
BM_StreamingPingPongMsgs<TCP, NoOpMutator, NoOpMutator>/512 [polls/iter:4.00009 ] 17.9µs ± 1% 16.5µs ±11% -7.40% (p=0.032 n=4+5)
BM_StreamingPingPong<TCP, NoOpMutator, NoOpMutator>/4096/1 [polls/iter:8.00016 ] 50.2µs ± 0% 49.5µs ± 1% -1.46% (p=0.024 n=3+6)
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/512/2 [polls/iter:12.0002 ] 65.5µs ± 3% 61.9µs ±13% -5.59% (p=0.048 n=5+7)
BM_UnaryPingPong<MinTCP, NoOpMutator, NoOpMutator>/0/0 [polls/iter:3.00009 ] 23.4µs ± 2% 23.0µs ± 0% -1.88% (p=0.036 n=3+5)
BM_UnaryPingPong<TCP, NoOpMutator, NoOpMutator>/512/0 [polls/iter:3.0001 ] 25.6µs ± 2% 25.0µs ± 0% -2.44% (p=0.017 n=7+3)
BM_UnaryPingPong<TCP, NoOpMutator, NoOpMutator>/262144/0 [polls/iter:3.00022 ] 164µs ± 2% 161µs ± 1% -1.83% (p=0.048 n=3+6)
5 years ago
Mark D. Roth
01eeec72c6
Change RR to consider a subchannel in TF if it has failed since it was READY.
5 years ago
Yash Tibrewal
aa84ceb38e
Add another test for when the credentials were previously set
5 years ago
Soheil Hassas Yeganeh
05901eaaa3
Fix filter_latency.cc
...
On Windows tests, clock monotonic doesn't progress. Switch to
CLOCK_PRECISE to fix this.
5 years ago
Esun Kim
c965ca1494
Pull out configuration from ssl_utils
5 years ago
Soheil Hassas Yeganeh
c9376b4e0b
Use cycle clock instead of clock monotonic to measure call latency.
...
This removes two more getttime syscalls from the hot path, when cycle
clock is enabled.
5 years ago
Yash Tibrewal
361a902262
Reviewer comments
5 years ago
Arjun Roy
0b06676c9e
hpack encoder optimizations.
...
Removed some cycles and branches from hpack_enc for CH2.
Specifically:
1. Pushed certain metadata key/value length checks to
prepare_application_metadata() in src/core/lib/surface/call.cc.
This means that rather than check all key/val lengths for all metadata, we only
do so for custom added user metadata. Inside CH2, we change the length checks to
debug checks so we can catch if core/filter metadata fails to pass the check.
2. Changed various asserts to debug asserts when able.
3. Refactored some of the header emission code to remove duplicated code.
4. Un-inlined some logging methods.
This results in somewhat faster hpack_encoder performance:
BM_HpackEncoderInitDestroy
222ns ± 0% 221ns ± 0% -0.29% (p=0.000 n=34+34)
BM_HpackEncoderEncodeDeadline
[framing_bytes/iter:9 header_bytes/iter:6 ] 135ns ± 1%
124ns ± 0% -8.05% (p=0.000 n=39+38)
BM_HpackEncoderEncodeHeader<EmptyBatch>/0/16384
[framing_bytes/iter:9 header_bytes/iter:0 ] 34.2ns ± 0%
34.2ns ± 0% -0.01% (p=0.014 n=34+38)
BM_HpackEncoderEncodeHeader<EmptyBatch>/1/16384
[framing_bytes/iter:9 header_bytes/iter:0 ] 34.2ns ± 0%
34.2ns ± 0% -0.04% (p=0.004 n=34+37)
BM_HpackEncoderEncodeHeader<SingleStaticElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.5ns ± 0%
45.9ns ± 0% -3.28% (p=0.000 n=28+38)
BM_HpackEncoderEncodeHeader<SingleInternedKeyElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:6 ] 77.0ns ± 1%
68.3ns ± 1% -11.33% (p=0.000 n=39+40)
BM_HpackEncoderEncodeHeader<SingleInternedElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 1%
45.5ns ± 0% -4.63% (p=0.000 n=39+33)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<1, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.2ns ± 0%
45.3ns ± 0% -3.96% (p=0.000 n=33+34)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<3, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.6ns ± 0% -4.54% (p=0.000 n=38+40)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<10, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.5ns ± 0% -4.63% (p=0.000 n=39+32)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<31, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 0%
45.6ns ± 1% -4.59% (p=0.000 n=38+39)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<100, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 0%
45.5ns ± 0% -4.64% (p=0.000 n=39+36)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<1, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.3ns ± 0%
45.3ns ± 0% -4.09% (p=0.000 n=38+36)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<3, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 1%
45.6ns ± 0% -4.71% (p=0.000 n=37+40)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<10, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.5ns ± 0% -4.66% (p=0.000 n=39+32)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<31, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 1%
45.6ns ± 1% -4.62% (p=0.000 n=37+39)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<100, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.5ns ± 0% -4.67% (p=0.000 n=38+32)
BM_HpackEncoderEncodeHeader<SingleNonInternedElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:9 ] 80.5ns ± 1%
74.7ns ± 0% -7.16% (p=0.000 n=38+35)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<1, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:12 ] 105ns ± 1%
99ns ± 0% -5.91% (p=0.000 n=38+34)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<3, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:14 ] 111ns ± 1%
106ns ± 1% -4.86% (p=0.020 n=39+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<10, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:23 ] 135ns ± 0%
130ns ± 0% -3.45% (p=0.020 n=35+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<31, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:46 ] 225ns ± 1%
223ns ± 0% -0.91% (p=0.003 n=37+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<100, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:120 ] 467ns ± 0%
472ns ± 0% +1.09% (p=0.003 n=38+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<1, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:12 ] 81.6ns ± 1%
74.8ns ± 0% -8.40% (p=0.000 n=37+33)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<3, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:14 ] 82.0ns ± 1%
74.8ns ± 0% -8.80% (p=0.000 n=37+32)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<10, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:21 ] 82.1ns ± 1%
74.9ns ± 0% -8.86% (p=0.000 n=35+34)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<31, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:42 ] 97.6ns ± 2%
91.8ns ± 0% -5.95% (p=0.000 n=35+27)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<100, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:111 ] 97.2ns ± 1%
91.2ns ± 2% -6.19% (p=0.000 n=37+38)
BM_HpackEncoderEncodeHeader<SingleNonInternedElem>/0/1
[framing_bytes/iter:54 header_bytes/iter:9 ] 230ns ± 0%
221ns ± 0% -3.91% (p=0.000 n=38+37)
BM_HpackEncoderEncodeHeader<MoreRepresentativeClientInitialMetadata>/0/16384
[framing_bytes/iter:9 header_bytes/iter:16 ] 206ns ± 2%
170ns ± 1% -17.51% (p=0.000 n=39+39)
BM_HpackEncoderEncodeHeader<RepresentativeServerInitialMetadata>/0/16384
[framing_bytes/iter:9 header_bytes/iter:3 ] 66.4ns ± 2%
62.5ns ± 1% -5.85% (p=0.000 n=34+39)
BM_HpackEncoderEncodeHeader<RepresentativeServerTrailingMetadata>/1/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.5ns ± 0%
45.9ns ± 1% -3.29% (p=0.000 n=26+38)
5 years ago
Yash Tibrewal
97f1f57dab
Allow call credentials to be set even after the call is created but before initial metadata is sent
5 years ago
Prashant Jaikumar
9f02fc7f91
Enable end2end C++ tests on iOS.
...
Some e2e tests were disabled on iOS because they hit the Apple CFStream bug.
This commit enables e2e tests and works around the Apple bug by disabling CFStream.
5 years ago
Mark D. Roth
51d18ecc63
Convert mpscq API from C to C++.
5 years ago
Vijay Pai
fd9bdd9922
Avoid duplicate initialization of SSL (from within grpc and from test)
5 years ago
Mark D. Roth
d3f50ace39
Use mutex instead of combiner in client channel data plane.
5 years ago
Jan Tattermusch
ece5fbdcb0
partially revert alpine distribtest attempts
5 years ago
Jan Tattermusch
9171646713
fix dependencies for classic .csproj
5 years ago
Jan Tattermusch
aeb04913ad
improved C# distribtest
5 years ago
Jan Tattermusch
504c4ace80
remove legacy c# testcodegen
5 years ago
Jan Tattermusch
21104ec1ee
remove BOM
5 years ago
Jan Tattermusch
0040bb9353
attempt to add alpine C# distribtest
5 years ago
Juanli Shen
c831a28dbd
Organize test cases for xds test
5 years ago
Brian Zhao
8274502af8
Windows's STACKFRAME Frame Addr should be RBP, the base pointer, not RSP, the stack pointer. This is documented here: https://docs.microsoft.com/en-us/windows/win32/api/dbghelp/ns-dbghelp-stackframe with the comment "AddrFrame x64: The frame pointer is RBP or RDI." Note that this is also what StackWalker uses: https://github.com/JochenKalmbach/StackWalker#initializing-the-stackframe64 and what Chromium uses: https://codesearch.chromium.org/chromium/src/v8/src/base/debug/stack_trace_win.cc?l=200&rcl=69d20d247f62a3378d15ce0956ed8bf9665e6a44 release notes: no
5 years ago
Esun Kim
3c6bb96a1f
Add test for static elements
5 years ago
Prashant Jaikumar
b436758b14
Added documentation for C++ tests on iOS
5 years ago
Prashant Jaikumar
2e1cb0d91a
Don't run time_jump_test under sanitizers
5 years ago
Vijay Pai
65eb9c9ddb
Revert "Test message size of 100MB"
5 years ago
Prashant Jaikumar
d2b5fd75f0
Added test for time jumps
5 years ago
Hope Casey-Allen
32801fb5eb
Remove build target for microbenchmark
5 years ago
Vijay Pai
1077b3435c
Use range-based for on state rather than state.KeepRunning when possible
5 years ago
Juanli Shen
d34f366337
Test message size of 100MB
5 years ago
Prashant Jaikumar
4dfa808e75
Add test for timer expiry racing with cancelation
5 years ago
Arjun Roy
b46e3668d3
s/branch/tail_call/ for CH2 on_hdr().
...
on_hdr() checks if a void-return function pointer is null before jumping to it.
If it is null, it returns an error; else it executes that function and returns
success.
This change converts the void-returning function to one that returns a
grpc_error* and thus saves a branch in on_hdr() (since we're branching once by
following the function pointer anyways, we're effectively coalescing these two
branches).
5 years ago
Mark D. Roth
21c5424477
Add API for accessing per-call backend metric data in LB policies.
5 years ago