Commit Graph

262 Commits

Author SHA1 Message Date
Sree Kuchibhotla 14ab588166 Merge branch 'master' into cq_create_api_changes 2017-03-28 12:37:00 -07:00
Yuxuan Li e5ddd4b906 change EnsureInitialMetadataSent to use template 2017-03-27 13:25:33 -07:00
Sree Kuchibhotla 74f419fe74 undo prev change 2017-03-24 15:11:06 -07:00
Sree Kuchibhotla 057230b0cd Minor bug 2017-03-24 15:03:55 -07:00
Sree Kuchibhotla 5bec133ba0 clang format 2017-03-24 10:03:22 -07:00
Sree Kuchibhotla f2c32150ef Update C++ code 2017-03-22 03:01:24 -07:00
Yuxuan Li 8d00f52d5b fix EnsureInitialMetadataSent type casting 2017-03-20 12:35:38 -07:00
Yuxuan Li b39eeac79e merge init_ops, writes_done_ops and write_ops 2017-03-20 12:00:34 -07:00
Yuxuan Li 0aac9d06e2 change last_message bit to be in C++ layer only 2017-03-10 14:34:59 -08:00
Yuxuan Li bdc76ab37b bug fix 2017-03-08 10:59:31 -08:00
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*.
2017-03-08 10:59:31 -08:00
Sree Kuchibhotla 1dbd981cf8 Prefix grpc_cq_polling_type enums with GRPC_CQ_ 2017-03-03 14:27:44 -08:00
Sree Kuchibhotla 9f71b17707 Fix clang formatting issues 2017-03-03 12:54:58 -08:00
Sree Kuchibhotla 982a6f2b1c C++ code changes in response to grpc_completion_queue_create() API change 2017-03-03 02:19:31 -08:00
yang-g c42d844d27 Let ServerContext own the initial_metadata array for sync calls 2017-02-22 23:04:06 -08:00
yang-g f07ed45439 Restore the NextMessageSize for streamed calls 2017-02-16 23:01:28 -08:00
David Garcia Quintas f31f096274 Use call context to propagare LR costs 2017-02-13 16:26:00 -08:00
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.
2017-02-07 15:45:44 -05:00
Craig Tiller 68bb6a8453 Merge github.com:grpc/grpc into rollfwd 2017-01-27 06:52:13 -08:00
Craig Tiller 4edd56751f Merge github.com:grpc/grpc into maxmsgsz 2017-01-26 13:50:14 -08:00
Craig Tiller afceb2edbd Merge github.com:grpc/grpc into rollfwd 2017-01-26 12:21:28 -08:00
Mark D. Roth 448c1f002c Move parameters for all grpc_op types into their own sub-structs. 2017-01-25 10:44:30 -08:00
Craig Tiller 7c70b6c144 Revert "Revert "Metadata handling rewrite""
This reverts commit 5e01e2ac97.
2017-01-23 07:48:42 -08:00
Craig Tiller 5e01e2ac97 Revert "Metadata handling rewrite" 2017-01-20 18:11:52 -08:00
Craig Tiller da9de8988b Merge github.com:grpc/grpc into maxmsgsz 2017-01-20 15:42:47 -08:00
Craig Tiller b7b7486c4b Merge github.com:grpc/grpc into metadata_filter 2017-01-20 11:31:47 -08:00
Craig Tiller 1d77059e4b Fix integer overflow 2017-01-19 11:44:42 -08:00
Vijay Pai 3cdee02893 Merge branch 'master' into its_compat 2017-01-19 10:42:08 -08:00
Craig Tiller 62f28bfcf0 Remove double-checking of max-message-size in C++ layers 2017-01-19 10:05:13 -08:00
Craig Tiller 81eceb31cc Remove bogus assert 2017-01-12 14:27:01 -08:00
Craig Tiller 0d8e0b138d Merge github.com:grpc/grpc into fix_errors 2017-01-06 13:59:30 -08:00
Craig Tiller e519a03a1f Small improvements to generated documentation 2017-01-06 12:41:21 -08:00
Vijay Pai 0e3f1f1e53 Support compat with old generated PB files 2016-12-13 20:03:53 -08:00
Craig Tiller 78bc54e7d9 Fix stack corruption 2016-12-08 15:19:41 -08:00
Craig Tiller cadabdf1f3 Fix include guards 2016-12-08 14:12:28 -08:00
Craig Tiller f658bf0e1b Start resolving memory issues in C++ metadata 2016-12-08 14:11:47 -08:00
Craig Tiller 385dd9a462 Merge branch 'slice_interning' into metadata_filter 2016-12-06 20:27:38 -08:00
Vijay Pai 6510d47c81 gpr_atm isn't automatically initialized to 0. Thanks Obama. 2016-12-05 14:16:20 -08:00
Vijay Pai bf24dd9e51 clang-format 2016-12-05 13:59:09 -08:00
Vijay Pai cbe1599250 Track requests that could cause other requests to be created, and don't do
a real core shutdown of a CQ until such requests are done
2016-12-05 13:56:29 -08:00
Craig Tiller 73ee7dc559 C++ compiles 2016-11-21 09:12:18 -08:00
Craig Tiller cca7589333 Start moving C++ to slice interfaces 2016-11-21 08:45:38 -08:00
Yuchen Zeng b1f6bf2ec4 Merge pull request #8086 from y-zeng/fix_gprc
Fix misspelled gprc
2016-11-11 15:11:44 -08:00
Craig Tiller 32df467f11 Merge github.com:grpc/grpc into grpc_slice 2016-11-04 08:21:56 -07:00
Vijay Pai 320ed13d3e Deprecate grpc::thread and sync in favor of std::thread,mutex,etc 2016-11-01 17:16:55 -07:00
Vijay Pai 5c41bab92c Remove references to NO_CHRONO option 2016-11-01 16:57:42 -07:00
Vijay Pai e08fe4f41e Remove separate versions of code based on presence of threading in compiler 2016-11-01 16:50:38 -07:00
Vijay Pai 713c7b87e1 clang-format 2016-11-01 16:33:18 -07:00
Vijay Pai c0b2acb1a0 Use C++11 final and override 2016-11-01 16:31:56 -07:00
Vijay Pai 80b292709c Stop supporting non-C++11 conformant compilers 2016-11-01 13:38:40 -07:00