Vijay Pai
611e7e78de
Reintroduce a lambda capture as part of C++11-izing code
8 years ago
David Garcia Quintas
97106a7ef2
Removed 3rd party dep on thrift
8 years ago
Craig Tiller
017b452b7b
Use larger block size in proto write
8 years ago
Craig Tiller
56bbe02ca1
Fix ubsan reported failure
8 years ago
yang-g
6bc701659c
Remove status_helper as it is not needed any more
8 years ago
Craig Tiller
a103f7bbdf
update comments
8 years ago
Craig Tiller
75bfb97548
Finish hybrid server stuff, ensure it gets tested
8 years ago
Craig Tiller
334c4678a3
Start building out C++ interface
8 years ago
yang-g
eceec8eaf6
Add helper function to supply and parse error_details from Status.
8 years ago
Craig Tiller
9d9313cfc6
Threading robustness
...
Move server startup to a separate thread.
Where there is no opportunity for failure, do not return bool.
8 years ago
yang-g
9cb19b8e24
support C++ error_details
8 years ago
yang-g
f4c8addded
support C++ error_details
8 years ago
Craig Tiller
d4e9a4863a
Convert all async client stream types to not allocate
8 years ago
Craig Tiller
fa416cbe3b
Dont break codegen barrier
8 years ago
Craig Tiller
be094fc5e6
Fix compile
8 years ago
Craig Tiller
e3b5921559
Potential msan fix
8 years ago
Sree Kuchibhotla
3f182df7de
Fix C asan error and check_sources_and_headers.py
8 years ago
Sree Kuchibhotla
fa71f6f369
Fix ASAN failure
8 years ago
Craig Tiller
66051c618f
Async end2end test passes
8 years ago
Craig Tiller
dd36b15315
Call ref/unref, bugfixes
8 years ago
David Garcia Quintas
55c895a6a4
Removed wrong LR include from codegen
8 years ago
Sree Kuchibhotla
ef8e00230e
Do not call grpc_init() for per-call-completion-queues created by a C++
...
synchronous server
8 years ago
Sree Kuchibhotla
0633c4a8d7
Do not call grpc_init() for per-call-completion-queues created by a C++
...
synchronous server
8 years ago
Sree Kuchibhotla
2c614a7a7b
clang
8 years ago
Yuxuan Li
e5ddd4b906
change EnsureInitialMetadataSent to use template
8 years ago
Sree Kuchibhotla
74f419fe74
undo prev change
8 years ago
Sree Kuchibhotla
057230b0cd
Minor bug
8 years ago
Sree Kuchibhotla
5bec133ba0
clang format
8 years ago
Sree Kuchibhotla
f2c32150ef
Update C++ code
8 years ago
Vijay Pai
60a41907a0
Remove delete assertion on base class and change to full fetch-add
8 years ago
Yuxuan Li
8d00f52d5b
fix EnsureInitialMetadataSent type casting
8 years ago
Yuxuan Li
b39eeac79e
merge init_ops, writes_done_ops and write_ops
8 years ago
Vijay Pai
379be59d0a
Pour one out for shared ptr
8 years ago
Craig Tiller
5845091432
[EXPERIMENTAL] allocate unary response writer against call arena
8 years ago
Yuxuan Li
0aac9d06e2
change last_message bit to be in C++ layer only
8 years ago
Yuxuan Li
bdc76ab37b
bug fix
8 years ago
Yuxuan Li
34894e4b1c
Implemented stream coalescing design
...
(RFC:https://github.com/grpc/proposal/pull/3 ). Add necessary
microbenchmarks to show reduced writes/iter for short streams. Add
necessary end2end test to test out newly added apis. Filter those tests
using *WithCoalescingApi*.
8 years ago
Craig Tiller
4751c28b0b
Add channel arguments to server builder
8 years ago
Sree Kuchibhotla
1dbd981cf8
Prefix grpc_cq_polling_type enums with GRPC_CQ_
8 years ago
Sree Kuchibhotla
9f71b17707
Fix clang formatting issues
8 years ago
Sree Kuchibhotla
982a6f2b1c
C++ code changes in response to grpc_completion_queue_create() API change
8 years ago
yang-g
c42d844d27
Let ServerContext own the initial_metadata array for sync calls
8 years ago
yang-g
f07ed45439
Restore the NextMessageSize for streamed calls
8 years ago
David Garcia Quintas
f31f096274
Use call context to propagare LR costs
8 years ago
yang-g
076bac017b
Remove async
8 years ago
Harvey Tuch
5f3cfe960f
Fix read from uninitialized memory bug in GrpcBufferWriter.
...
This commit fixes an issue in which the following sequence of operations
leads to use of uninitialized memory:
1. Caller invokes GrpcBufferWriter::Next(), and then makes use of 8191
bytes in the returned buffer (which is 8192 bytes in size).
2. Caller then returns the unused single byte via
GrpcBufferWriter::BackUp(). This method invokes
g_core_codegen_interface->grpc_slice_split_tail(), which causes
backup_slice_ to be a grpc_slice with one byte.
3. At the next invocation of GrpcBufferWriter::Next(), a reference to
the single byte grpc_slice is returned to the caller.
The problem here is that the returned reference is to the inlined buffer
in the grpc_slice, which is resident in slice_, not the location of the
buffer inside slice_buffer_ after
g_core_codegen_interface->grpc_slice_buffer_add() in
GrpcBufferWriter::Next(). As a result, any data the caller writes to the
returned void* data is lost.
The solution is to avoid inlined backup slices.
8 years ago
Mark D. Roth
e6dd773dff
Move parameters for all grpc_op types into their own sub-structs.
8 years ago
Mark D. Roth
448c1f002c
Move parameters for all grpc_op types into their own sub-structs.
8 years ago
Craig Tiller
7c70b6c144
Revert "Revert "Metadata handling rewrite""
...
This reverts commit 5e01e2ac97
.
8 years ago
Craig Tiller
5e01e2ac97
Revert "Metadata handling rewrite"
8 years ago