Commit Graph

1657 Commits

Author SHA1 Message Date
Yash Tibrewal 193b4b57ec
Merge pull request #17072 from yashykt/interceptor_cancellation
Interceptors should see a Cancellation notification
2018-11-06 14:56:24 -08:00
Vijay Pai 1e850944e9 Release the CallbackWithSuccessTag from a server context completionop 2018-11-06 11:49:17 -08:00
Vijay Pai 526d2e6004 Refactoring of CallbackWithSuccessTag 2018-11-06 11:20:50 -08:00
Yash Tibrewal 4cc3717e15 move client_interceptor.cc from src/cpp/codegen to src/cpp/client 2018-11-05 15:03:57 -08:00
Yash Tibrewal f8561952e9 Don't use default capture 2018-11-05 12:15:56 -08:00
Yash Tibrewal e08a2b387a Prefer lambda expressions over std::bind 2018-11-02 15:56:57 -07:00
Yash Tibrewal 3ac7f2d24c
Merge pull request #17053 from yashykt/global_interceptor
Add global client interceptor factory
2018-11-02 08:56:16 -07:00
Yash Tibrewal b732e9c403 Make client interceptors see notification even if Cancel was done before the RPC was issued. Also add tests 2018-11-01 16:14:40 -07:00
Yash Tibrewal fd88dcaf55 Add cancellation notification 2018-11-01 11:58:46 -07:00
Yash Tibrewal 3ece34d45c Let us clean a few things before getting started 2018-10-31 15:29:26 -07:00
Vijay Pai 932abf48a3 Address reviewer comments. 2018-10-31 01:02:07 -07:00
Vijay Pai 2f47137a6e Add support for IsCancelled check 2018-10-30 23:15:59 -07:00
Vijay Pai 47d0d5bf1f Merge branch 'master' into server_callback 2018-10-30 12:29:35 -07:00
Yash Tibrewal 0390b29e15 Register global interceptors functionality 2018-10-30 02:43:01 -07:00
Yash Tibrewal 3c1ca6bf39
Merge pull request #17034 from yashykt/interceptorcleanup
Get ClientContext included with ChannelInterface, and slight more cle…
2018-10-30 00:12:55 -07:00
Vijay Pai 84e763f10a Experimental C++ server callback unary API 2018-10-29 13:41:25 -07:00
Yash Tibrewal 145789e9ff interceptor_creators_ should be destroyed after health_check_service_ 2018-10-29 13:15:29 -07:00
Vijay Pai 371b1d99d5 Add call as param to MethodHandler::Deserialize to allow arena use 2018-10-29 02:10:00 -07:00
Yash Tibrewal 01313976e1
Merge pull request #16842 from yashykt/interceptors
Experimental API for Client and Server Interception
2018-10-28 23:36:59 -07:00
Yash Tibrewal c2e3fde9b5 Rename call.h to call_op_set.h and call_wrapper.h to call.h 2018-10-26 15:15:48 -07:00
ncteisen bc44c5e353 Add GetServer to channelz cpp 2018-10-26 12:58:04 -07:00
Yash Tibrewal cc21d32c77 Some cleanup 2018-10-26 00:13:55 -07:00
Yash Tibrewal 312feb4202 Adding generic rpc and unimplemented rpc test for server interceptors 2018-10-25 21:43:49 -07:00
Yash Tibrewal 3896dabb85 Merge branch 'master' into interceptors 2018-10-25 19:50:10 -07:00
Yash Tibrewal a094b7b312 Added server async tests 2018-10-25 19:24:30 -07:00
ncteisen 43df9fda64 un duplicate code 2018-10-25 09:46:34 -07:00
ncteisen 4fa389b137 Unifying grpc build hacks 2018-10-24 17:25:51 -07:00
ncteisen 482641501c Revert "Revert "Refactor Channelz Service to Support Internal Build""
This reverts commit 2eafaccba6.
2018-10-24 17:22:22 -07:00
Yash Tibrewal 281de1bb30 Solve memory leak due to double setting of set_server_rpc_info 2018-10-24 15:54:08 -07:00
Noah Eisen 2eafaccba6
Revert "Refactor Channelz Service to Support Internal Build" 2018-10-24 15:44:50 -07:00
Mark D. Roth 496d0676c8
Merge pull request #16507 from markdroth/health_checking_client
Health checking client
2018-10-24 13:17:01 -07:00
Mark D. Roth f85fd026e3 Client-side health checking support. 2018-10-24 12:29:04 -07:00
Vijay Pai 45dfbe097e Arena-allocate the ServerContext::CompletionOp 2018-10-24 02:11:50 -07:00
Yash Tibrewal 62280b42c7 Add client streaming, server streaming and bidi streaming tests 2018-10-23 21:08:39 -07:00
ncteisen 97134a69be Refactor to support internal build 2018-10-22 17:08:31 -07:00
Yash Tibrewal b358ef85dc Merge branch 'master' into interceptors 2018-10-22 10:39:27 -07:00
Yash Tibrewal 9b83b7d19e Adding intercepted channel 2018-10-22 02:42:03 -07:00
Yash Tibrewal 3a17f5b05e Working on tests 2018-10-21 23:06:21 -07:00
Vijay Pai ce4bd108ea Fix CallOpSet copy/assignment to reset cq_tag 2018-10-19 17:17:34 -07:00
Yash Tibrewal 456231b26d Server side interception for CompletionOp and AsyncRequest 2018-10-18 22:43:49 -07:00
Yash Tibrewal adca91f6cf Server interception for SyncRequest 2018-10-18 16:07:00 -07:00
Yash Tibrewal d042a5acf1 some tests fail 2018-10-17 22:05:48 -07:00
Yash Tibrewal 0b785ae8cf Remove unneeded file 2018-10-17 14:37:35 -07:00
Yash Tibrewal 196f530ac9 Pass interceptor creators to server object 2018-10-17 12:51:17 -07:00
Yash Tibrewal af621c7705 Add method to register server creators 2018-10-17 12:32:53 -07:00
Mark D. Roth 231b863922 address clang-tidy problems 2018-10-17 09:29:05 -07:00
Yash Tibrewal b232bacf27 Starting on server interceptors 2018-10-16 14:11:07 -07:00
Yash Tibrewal cc8c27950c Change types to use C++ types rather than core types 2018-10-16 14:10:48 -07:00
Yash Tibrewal 6fb7bd23bf s/GPR_ASSERT/GPR_CODEGEN_ASSERT and few more bugs 2018-10-16 14:10:30 -07:00
Yash Tibrewal 6f05a711e6 Adding a test 2018-10-16 14:10:17 -07:00
Yash Tibrewal 63bdf4e236 More changes for client interception 2018-10-16 14:10:02 -07:00
Yash Tibrewal 5d831da9d1 Adding hook points for interception. Code compiles and tests still run 2018-10-16 14:09:34 -07:00
Mark D. Roth a424d96997 clang-format 2018-10-15 14:57:20 -07:00
Mark D. Roth f4e65787b6 Merge remote-tracking branch 'upstream/master' into health_checking_service 2018-10-15 13:12:26 -07:00
Mark D. Roth 0b085a1f05 Fix tsan problem at startup. 2018-10-15 13:11:55 -07:00
ncteisen 0b0f21b3d2 C++ Channelz GetServerSockets Support 2018-10-09 12:07:13 -07:00
ncteisen 9b0223f1c5 Add skeleton listen socket support 2018-10-09 12:06:46 -07:00
Stanley Cheung e5ce1e36e6 Regenerate projects 2018-10-08 15:50:50 -07:00
easy f551f475f0 GenerateServerContext: Don't use a parent context if it's invalid. 2018-10-08 20:43:06 +11:00
Yash Tibrewal 130eeeaeb9 Merge branch 'master' into interceptors_initial 2018-10-02 14:49:17 -07:00
Yash Tibrewal 1d999617e2 Add experimental versions with interceptors for create channel from fd and inproc channel 2018-09-30 22:13:44 -07:00
Yash Tibrewal b741edf37e Error fixes 2018-09-27 17:34:19 -07:00
Noah Eisen a9f8bcce11
Merge pull request #16725 from ncteisen/channelz-cpp
Channelz++ Part 4: Socket support
2018-09-27 14:13:17 -07:00
ncteisen 038e760a7d Channelz C++ Socket support 2018-09-27 14:20:57 -05:00
Soheil Hassas Yeganeh 80ce1865d7 Make SliceFromArray() static in channel_cc.cc.
Also, use `context->authority_` instead of `context->authority()`
for consistency.
2018-09-27 11:27:15 -04:00
Yash Tibrewal a1598c5abf Create interfaces and initial plumbing for interception API 2018-09-26 19:25:30 -07:00
Mark D. Roth 4d9ad11653 Simplify call state logic, create non-polling CQ, and some cleanup. 2018-09-26 14:16:18 -07:00
Soheil Hassas Yeganeh 369cfe118c Use SliceFromCopiedString() for host name.
This is to address Yang's review comment.
2018-09-25 21:59:15 -04:00
Soheil Hassas Yeganeh c1a1d66864 Avoid allocating temporary strings in Channel::CreateCall().
Add `SliceFromArray()` which takes a `char*` instead of
`const string&`, to save string allocations for copying from a `char *`.

Use the new API to eliminate two string allocations and copies per call for
method and host names.

release-note: no
2018-09-25 17:50:45 -04:00
Mark D. Roth be1ce0c4cc Revert "Merge pull request #16600 from grpc/revert-16574-health_checking_service"
This reverts commit de11358660, reversing
changes made to 107d10ea73.
2018-09-25 11:42:57 -07:00
Vijay Pai 9e6511ae2e Make the core callback interface API so that it can be used in generated code 2018-09-19 23:57:56 -07:00
Vijay Pai f6e7b778c4
Merge pull request #16655 from vjpai/callback_tidy
Callback API: Fix clang-tidy concerns
2018-09-19 12:58:02 -07:00
Vijay Pai 46429a2a6a
Merge pull request #16624 from vjpai/callback_alarms
EXPERIMENTAL: Add callback-based alarms
2018-09-19 12:06:11 -07:00
Vijay Pai deb3126611 Fix clang-tidy concerns 2018-09-19 11:29:11 -07:00
Vijay Pai 0e5b2a7946
Merge pull request #16638 from vjpai/callback_exceptions
EXPERIMENTAL: Catch exceptions in user callbacks
2018-09-18 11:09:11 -07:00
Juanli Shen ef60c57dd5
Merge pull request #16459 from arfaian/master
Fix compilation error due to missing absl qualification.
2018-09-17 10:59:55 -07:00
Vijay Pai 73d89a66f9 Catch exceptions in user callbacks 2018-09-14 16:56:19 -07:00
Vijay Pai db01bf793a Add callback-based alarms 2018-09-13 09:54:41 -07:00
Vijay Pai 3bc10c0f44
Merge pull request #16492 from vjpai/client_callback
EXPERIMENTAL: C++  generic client-side unary callback API
2018-09-12 09:03:49 -07:00
Vijay Pai 0382d06248 Don't use cq_tag on Server CallOpSet's yet 2018-09-11 23:47:40 -07:00
Noah Eisen 71aa60265c
Merge pull request #16360 from ncteisen/channelz-cpp-server
Channelz++ Part 3: GetServers Support
2018-09-11 12:01:17 -07:00
Vijay Pai 20778b0c46 Address reviewer comments 2018-09-11 09:14:57 -07:00
Mark D. Roth 42d9becd91
Revert "Second attempt: Implement Watch method in health check service." 2018-09-10 14:06:52 -07:00
ncteisen 6ef3b0dc2b Merge branch 'master' of https://github.com/grpc/grpc into channelz-cpp-server 2018-09-10 14:03:40 -07:00
ncteisen 722bc69966 Merge branch 'master' of https://github.com/grpc/grpc into channelz-server 2018-09-10 12:28:21 -07:00
ncteisen 483537671c Merge branch 'channelz-subchannels' into channelz-cpp 2018-09-08 10:20:00 -07:00
ncteisen 5946ae5eff Merge branch 'channelz-subchannels' into channelz-server 2018-09-08 10:19:26 -07:00
ncteisen 4205b97dd9 reviewer feedback 2018-09-07 16:02:08 -07:00
Mark D. Roth 7975c6ad98 Fix internal build breakage from #16351. 2018-09-05 10:33:38 -07:00
Mark D. Roth 6d2c8f8072 Revert "Merge pull request #16512 from grpc/revert-16351-health_checking_service"
This reverts commit 4ee0f4c790, reversing
changes made to 5ee9b5e7b5.
2018-09-05 10:27:54 -07:00
Noah Eisen 4e6ed86a04
Merge pull request #16407 from ncteisen/lazy-metadata
Lazily Fill Metadata Map
2018-08-31 12:05:16 -07:00
Vijay Pai 5474e92292 Allocate using call arenas 2018-08-31 10:11:38 -07:00
Vijay Pai 6b6bdbbb76 Address reviewer and clang-tidy comments 2018-08-30 15:46:27 -07:00
Vijay Pai 8bf52535d1 Provide a generic client-side unary callback API 2018-08-30 15:46:27 -07:00
Juanli Shen 14a858123d
Revert "Implement Watch method in health check service." 2018-08-29 21:36:41 -07:00
ncteisen 72ac3d0cb1 Merge branch 'channelz-server' into channelz-cpp-server 2018-08-28 17:17:16 -07:00
ncteisen e165579d3e Subchannel support to C++ 2018-08-28 17:16:17 -07:00
ncteisen 743d40d635 Lazily fill metadata map 2018-08-28 17:00:20 -07:00
ncteisen 6076b1d798 Merge branch 'channelz-subchannels' into channelz-server 2018-08-28 12:55:40 -07:00
Mark D. Roth 4d985efe19
Merge pull request #16351 from markdroth/health_checking_service
Implement Watch method in health check service.
2018-08-28 11:59:22 -07:00
Mark D. Roth 99ce3e19af Implement Watch method in health check service. 2018-08-28 08:51:52 -07:00
Juanli Shen 8ceb27a324 Regenerate projects 2018-08-27 14:27:55 -07:00
Arian Arfaian 99e09fe821 Fix compilation error due to missing absl qualification. 2018-08-25 09:50:58 -07:00
Vijay Pai ccc6ee3db0
Merge pull request #15984 from g-easy/hdrs
Move GetSpanFromServerContext() to public header.
2018-08-20 17:03:03 -07:00
Vijay Pai 472b9327c0
Merge pull request #16374 from vjpai/census
Move a census file from src/cpp to src/core since core depends on it
2018-08-17 16:38:33 -07:00
Yash Tibrewal b22c3009d4 Fix typo 2018-08-16 18:15:26 -07:00
Yash Tibrewal d9f4c76356 Add a nullptr check 2018-08-16 16:26:42 -07:00
Vijay Pai 381bcab8bd Move a file from src/cpp to src/core since core depends on it 2018-08-16 15:44:19 -07:00
Yang Gao b840d5e45c
Revert "Add more filter priority levels" 2018-08-16 08:58:26 -07:00
Vijay Pai 8a86f5329e
Merge pull request #16356 from vjpai/exhaustion
C++ sync server: Return status RESOURCE_EXHAUSTED if no thread quota available
2018-08-15 19:52:23 -07:00
Vijay Pai 9c32dab63d Expand comment based on reviewer feedback 2018-08-15 14:46:51 -07:00
ncteisen 70ef911343 Add C++ support for GetServers 2018-08-15 12:05:58 -07:00
ncteisen 408f64c3a1 Merge branch 'channelz-server' into channelz-cpp-server 2018-08-15 11:11:57 -07:00
ncteisen f3c600f335 Fix up C++ test to be more stable 2018-08-15 10:56:32 -07:00
Vijay Pai d9781df474 Address reviewer comments 2018-08-15 10:13:22 -07:00
Vijay Pai 14ad82a76d Create a new method handler for resource exhaustion and tie into thread mgr 2018-08-14 16:23:21 -07:00
ncteisen 6321a53e4a fix typo 2018-08-14 15:01:28 -07:00
ncteisen f025b6ed89 Change thread default to INT_MAX 2018-08-14 14:42:00 -07:00
ncteisen 0bf39e2a13 Subchannel support to C++ 2018-08-13 13:56:36 -07:00
Sree Kuchibhotla f63b51be86 Merge branch 'master' into rq-threads-2 2018-08-09 12:13:41 -07:00
Junhao Li 5cb99c9592
fix format 2018-08-09 00:51:17 -04:00
Junhao Li b9decfb35d
include cmath to fix gcc8 compilation error
This fix resolves the following compilation error on GCC8.1.1:

ERROR: /home/junhao/tools/grpc/BUILD:1350:1: C++ compilation of rule '//:grpcpp_server_load_reporting' failed (Exit 1)
src/cpp/server/load_reporter/util.cc:31:12: error: no member named 'isnormal' in namespace 'std'
  if (std::isnormal(cost_value)) {
      ~~~~~^
1 error generated.
2018-08-08 14:31:52 -07:00
Mark D. Roth 60069baa6a
Merge pull request #16225 from markdroth/reset_connection_backoff
Reset connection backoff
2018-08-07 08:09:59 -07:00
Mark D. Roth f7e72560b6 Add experimental API for resetting connection backoff. 2018-08-06 14:46:53 -07:00
Sree Kuchibhotla a2a64e5ad3 Fix default argument(put it in header instead of source file) 2018-08-06 11:58:20 -07:00
Sree Kuchibhotla 9ce673f861 Make resource quota argument optional to the Server constructor 2018-08-01 12:12:46 -07:00
Sree Kuchibhotla bdd13cb0ae
Revert "Revert "Restrict the number of threads in C++ sync server"" 2018-08-01 11:22:40 -07:00
yang-g d6ef707422 Add more filter priority levels 2018-08-01 11:22:32 -07:00
Nicolas Noble bea98c3c1b
Revert "Restrict the number of threads in C++ sync server" 2018-07-31 21:12:45 -07:00
Sree Kuchibhotla 9b84d7fe21 Merge branch 'master' into rq-threads 2018-07-30 10:09:47 -07:00
Sree Kuchibhotla 6eac5e41b1 std::max is not available on some windows platforms 2018-07-27 17:23:02 -07:00
Sree Kuchibhotla c2a22a1ab8 Address core review comments 2018-07-27 16:19:03 -07:00
Sree Kuchibhotla 8f39834dd1 Change the default max threads to something more reasonable 2018-07-25 10:36:46 -07:00
Sree Kuchibhotla 404d4f3a4d Merge branch 'master' into rq-threads 2018-07-24 16:37:42 -07:00
Sree Kuchibhotla b95772eeb9 Add Tests in Core and C++ and fix a few related bugs in thread_manager.cc 2018-07-24 16:35:25 -07:00
Yihua Zhang acc6ba0c24 Add C++ wrapper for local credentials 2018-07-24 12:00:49 -07:00
Srini Polavarapu 29c9e0477b
Merge pull request #16067 from srini100/master
Bump version to v1.15.0-dev
2018-07-23 12:41:16 -07:00
Sree Kuchibhotla 7b8be4d6fd Merge branch 'master' into rq-threads 2018-07-23 10:52:27 -07:00
Sree Kuchibhotla ec1c112cc1 Each ThreadManager is a resource user 2018-07-20 15:10:16 -07:00
ncteisen 18a9d7d57c reviewer feedback 2018-07-20 09:29:05 -07:00
ncteisen b47214952b reviewer feedback 2018-07-19 15:19:43 -07:00
ncteisen 6104e4f33b Move ChannelzServicePlugin to public, experimental 2018-07-19 14:59:10 -07:00
Srini Polavarapu 8c9af7464c Regenerate projects 2018-07-19 09:52:56 -07:00
ncteisen c194528844 Adds C++ Channelz Service 2018-07-18 18:24:19 -07:00
Sree Kuchibhotla 67bb4e3030 Initial scaffolding 2018-07-17 10:25:33 -07:00
Juanli Shen be40b0d3a8 Add server load reporting service 2018-07-13 19:52:59 -07:00
easy 1b6e8514a9 Move GetSpanFromServerContext() to public header. 2018-07-11 14:55:46 +10:00
Juanli Shen 86aa172d9b
Merge pull request #15919 from AspirinSJL/reorder
Reorder steps in ServerBuilder::BuildAndStart()
2018-07-06 22:08:34 -07:00
Juanli Shen 1f965159dd Reorder steps when starting a server 2018-06-30 22:54:42 -07:00
Kerrick Staley 4fb53784fb
Fix Bazel build instructions
See https://groups.google.com/d/msg/grpc-io/ljBk9Z_QyuQ/3i-obzb3CAAJ
2018-06-25 08:56:19 -07:00
Juanli Shen f5f1d57d7a Add load reporting filter 2018-06-22 10:00:48 -07:00
Juanli Shen 291bbc7014 Add load reporter 2018-06-21 13:21:02 -07:00
Jan Tattermusch f389e5267a overhaul of top-level .md files 2018-06-20 20:35:04 +02:00
Vizerai c0d251a10e Fixing trailing metadata ops. 2018-06-19 16:21:26 -07:00
Mark D. Roth 9e3e64604d
Merge pull request #15274 from JackOfMostTrades/verify-callback-core
Create verify_peer_options when creating ssl credentials to support a peer verification callback
2018-06-19 10:00:16 -07:00
Jim King 01cbab60f3
Merge pull request #15070 from Vizerai/filter_port
Adding opencensus grpc plugin with bazel support.
2018-06-18 17:01:26 -07:00
Noah Eisen bd6ac0f9d5
Merge pull request #15681 from ncteisen/even-more-clang
Even More Clang Tidy: performance-*
2018-06-15 10:43:49 -04:00
Srini Polavarapu d6616280d3
Merge pull request #15694 from srini100/bump-to-v1.14
Bump master to v1.14
2018-06-14 19:57:13 -07:00
Noah Eisen 58e0cbf9fb Enable the performance-* clang-tidy checks 2018-06-14 14:58:09 -04:00
Ian Haken 68eff58df6 Create verify_peer_options when creating ssl credentials in order to expose a verification callback option.
These options are not yet exposed to languages outside of core.
2018-06-12 12:59:37 -07:00
David Garcia Quintas 32c04931db Merge branch 'master' of github.com:grpc/grpc into nanopb_build_cleanup 2018-06-11 15:52:42 -07:00
Srini Polavarapu c79c156307 Regenrate projects 2018-06-08 17:01:18 -07:00
Yash Tibrewal bbbcc451df
Merge pull request #15394 from yashykt/maxmsglen
Allow unlimited as the max receive message length
2018-06-07 19:16:05 -07:00
Yash Tibrewal 3052cff753 Change comments 2018-06-07 14:03:00 -07:00
David Garcia Quintas bc9573d7ac back to using quotes for nanopb includes 2018-06-04 13:49:03 -07:00
David Garcia Quintas 087fe278ed quotes to angle brackets for nanopb includes 2018-06-01 16:09:42 -07:00
David Garcia Quintas 73dec497af clang-format 2018-06-01 15:53:35 -07:00
David Garcia Quintas 00e045dbb2 Fix the inclusion "third_party/nanopb/..." to simply "..." 2018-06-01 15:44:03 -07:00
Vizerai e501a3d3fd Merge branch 'master' of https://github.com/Vizerai/grpc into filter_port 2018-05-29 10:45:32 -07:00
Vizerai cb2767143c update 2018-05-24 22:39:23 -07:00
Ara Ayvazyan 8d06d097bc Fix broken ByteBuffer copy ctor 2018-05-22 20:47:35 -07:00
Vizerai 60086793e0 update 2018-05-22 16:03:16 -07:00
Yash Tibrewal efee8f227d Allow unlimited as the max receive message length 2018-05-15 16:39:16 -07:00
Vizerai 41e4cedb70 Adding opencensus grpc plugin.
Rebasing to merge commits.
2018-05-10 11:41:15 -07:00
Mehrdad Afshari 2d43a45ad1 Regenerate projects 2018-05-02 22:49:52 -07:00
Juanli Shen a0aab7ebcc Add load data store 2018-05-01 10:46:44 -07:00
Yihua Zhang fe2fa0c1c8 Add C++ experimental API extensions for ALTS C stack 2018-04-16 15:11:32 -07:00
Noah Eisen 52d4c7c8b6 Ensure lib is initialize for ByteBuffer use 2018-04-06 12:42:33 -07:00
ncteisen cf5b2666e1 Make GrpcProtoBufferReaderWriter public 2018-04-06 07:05:27 -07:00
Mehrdad Afshari 90cfc8ed57 Regenerate projects 2018-04-04 14:04:11 -07:00
Vijay Pai a4da2d2a54 Eliminate existence of SneakyCallOpSet, some server cleanup 2018-03-22 19:09:01 -07:00
Nicolas Noble 129f38a8a5
Merge pull request #14517 from makdharma/extensible_api
Remove "final" keyword and make methods protected.
2018-03-13 09:58:59 -07:00
makdharma 606742d30c replaced loop with range expression 2018-03-12 14:30:51 -07:00
makdharma d10a885922 removed unnecessary "virtual"
Removed unnecessary "virtual" keyword from CompletionQueue::Next.
Reverted two files that no longer need to be changed.
2018-03-12 10:12:01 -07:00
Mark D. Roth 3d8b32d8b3 Convert byte_stream API to C++. 2018-03-09 13:25:40 -08:00
makdharma 9cd0099a53 variable init sequence fix 2018-03-09 09:42:22 -08:00
Vijay Pai 02b64f5c91 Fix a thread name 2018-03-06 10:00:30 -08:00
Vijay Pai 809cf96c56 Name needs to only be alphanumeric+underscore+dash 2018-03-05 23:04:57 -08:00
Vijay Pai 7fed69b7ad Use static_cast rather than reinterpret_cast whenever possible 2018-03-05 16:35:10 -08:00
Vijay Pai 162ae4f50c
Remove std::thread, keep everything else unchanged (#13) 2018-03-02 16:16:04 -08:00
makdharma e1a7283dd3 moved Next implementation to CC file. 2018-02-26 14:55:56 -08:00
Vijay Pai 8b05d0284f Merge branch 'master' into 2phase_thd 2018-02-24 10:37:13 -06:00
makdharma 8065000697 Remove "final" keyword and make methods protected.
This adds extensibility to the API and makes custom implementation
of the server possible.
2018-02-23 14:51:46 -08:00
Mehrdad Afshari 9073ea03ef Regenerate projects 2018-02-22 22:21:33 -08:00
Vijay Pai a8453a20d8 Merge branch 'master' into 2phase_thd 2018-02-21 10:24:15 -08:00
Muxi Yan 9614395928 Fix grpc++->grpcpp leftover files 2018-02-20 21:10:18 -08:00
Vijay Pai da69355f30 C++ize gpr_thread as grpc_core::Thread, make it 2-phase init (construct/Start) 2018-02-19 22:39:58 -08:00
Muxi Yan 0e00c43082 Move headers from grpc++ to grpcpp 2018-02-15 14:49:34 -08:00
Vijay Pai c745690caf Internalize gpr_thd except for id and currentid 2018-02-12 11:44:52 -08:00
Srini Polavarapu c7cc3f9692
Merge pull request #14394 from srini100/master
Remove redundant build instructions
2018-02-10 19:41:00 -08:00
Srini Polavarapu 89f70d163b Merge branch 'master' of https://github.com/grpc/grpc into docfix 2018-02-09 10:10:14 -08:00
Noah Eisen 4d20a66685 Run clang fmt 2018-02-09 09:34:04 -08:00
Noah Eisen be82e64b3d Autofix c casts to c++ casts 2018-02-09 09:16:55 -08:00
Srini Polavarapu 3cca82534d Consolidate build instructions in INSTALL.md and src/cpp/README.md 2018-02-08 11:53:35 -08:00
Vijay Pai 239b7d4b0b Merge branch 'master' into gpr_review 2018-02-08 11:08:41 -08:00
Vijay Pai 73a50abd1d
Merge pull request #14286 from dgquintas/fix_compresion_alg_accessors
Fix compression algorithm accessors
2018-02-04 23:39:07 -08:00
Vijay Pai d4d0a30c6f Privatize useful.h and avl.h 2018-02-02 09:16:44 -08:00
David Garcia Quintas a21ab2ba29 Fix compression algorithm accessors 2018-02-01 16:24:00 -08:00
Vijay Pai fe75ef5b2d clang-format 2018-01-21 21:04:38 -08:00
Vijay Pai e1e7042919 Restructure to simplify, harden, and avoid forward declaration 2018-01-21 21:04:38 -08:00
Vijay Pai 2b226adf60 Remove alarm from core, implement in C++ layer only 2018-01-21 21:03:56 -08:00
Mehrdad Afshari 43884047c9 Regenerate projects 2018-01-19 14:25:15 -08:00
Mark D. Roth dbdf495f61 Split lib/support into lib/gpr and lib/gpr++. 2018-01-18 11:21:12 -08:00
Jan Tattermusch c9ec2c0888
Revert "Stop using std::thread in C++ library since it can trigger exceptions" 2018-01-12 10:16:22 +01:00
Vijay Pai b4b0ac7049 Resolve leak by freeing request payload if resources exhausted 2018-01-10 14:40:40 -08:00
Vijay Pai 92e267ec50 Add needed header 2018-01-10 18:45:08 +00:00
Vijay Pai 5dd32268be Switch C++ sync server to use gpr_thd rather than std::thread and provide resource exhaustion mechanism 2018-01-08 10:02:38 -08:00
Yash Tibrewal 8cf1470a51
Revert "Revert "All instances of exec_ctx being passed around in src/core removed"" 2017-12-06 09:47:54 -08:00
Yash Tibrewal ad4d2dde00
Revert "All instances of exec_ctx being passed around in src/core removed" 2017-12-06 09:05:05 -08:00
Yash Tibrewal 36522e9f80 Merge master after no Extern C changes 2017-11-30 17:47:36 -08:00
Yash Tibrewal 10f2790f7f Merge branch 'master' into execctx 2017-11-30 10:54:42 -08:00
Yash Tibrewal c354269ba7 Remove _ prefixed variable names 2017-11-29 19:07:44 -08:00
ncteisen aa358d5e43 Merge branch 'master' of https://github.com/grpc/grpc into no-more-extern-c 2017-11-28 14:12:25 -08:00
Mehrdad Afshari 14e96f9ae8 Bump 1.8.0-dev to 1.9.0-dev 2017-11-27 17:14:15 -08:00
ncteisen 61c4d6b648 Fix stats 2017-11-17 14:08:57 -08:00
ncteisen adbfbd5977 Remove all extern C 2017-11-17 14:08:57 -08:00
Yash Tibrewal 177039b2f8 Merge master 2017-11-16 19:31:28 -08:00
Yash Tibrewal 6c26b16fe0 Move ExecCtx to grpc_core namespace. Make exec_ctx a private static in ExecCtx and some minor changes 2017-11-14 18:11:22 -08:00
Yash Tibrewal 75122c2357 Address some PR comments 2017-11-14 01:36:28 -08:00
Craig Tiller be98d24841 clang-format after nullptr changes 2017-11-10 15:26:57 -08:00
Craig Tiller 4ac2b8e585 Enable clang-tidy as a sanity check, fix up all known failures 2017-11-10 14:14:17 -08:00
Yash Tibrewal 4e9265c828 Merge with master 2017-11-09 17:46:29 -08:00
Noah Eisen 9ad6068f66
Merge pull request #13199 from ncteisen/zero-copy
Refactor SerializationTraits
2017-11-07 11:42:24 -08:00
ncteisen f97d2f5b37 Add init/shutdown to codegen interface 2017-11-06 17:49:57 -08:00
Craig Tiller baa14a975e Update clang-format to 5.0 2017-11-03 09:09:36 -07:00
ncteisen 023726202a Refactor SerializationTraits 2017-10-31 13:15:27 -07:00
Yuchen Zeng b16df75471 Update with internal C++ interfaces 2017-10-30 12:09:16 -07:00
Yuchen Zeng 6a48dc544e Remove c++ channel connectivity watcher 2017-10-30 12:06:52 -07:00
Vijay Pai 7a648854e9
Adopt the static factory pattern (#10)
* Switch sync streams from "struct internal" to static factory in namespace internal

* Reduce diff size

* fix friends

* Use static factory pattern for async unary calls

* Use static factories for async streams

* clang-format
2017-10-27 10:22:51 -07:00
Vijay Pai 06e174a088 Separate public and internal C++ interfaces 2017-10-26 14:28:26 -07:00
yang-g 903981adb6 Catch out of order error code 2017-10-25 10:46:35 -07:00
Ken Payson 42bd87e376 Adds gRPC Experimental CQ DoThenAsyncNext lambda API 2017-10-25 09:13:30 -07:00
Yash Tibrewal 0ee7574732 Removing instances of exec_ctx being passed around in functions in
src/core. exec_ctx is now a thread_local pointer of type ExecCtx instead of
grpc_exec_ctx which is initialized whenever ExecCtx is instantiated. ExecCtx
also keeps track of the previous exec_ctx so that nesting of exec_ctx is
allowed. This means that there is only one exec_ctx being used at any
time. Also, grpc_exec_ctx_finish is called in the destructor of the
object, and the previous exec_ctx is restored to avoid breaking current
functionality. The code still explicitly calls grpc_exec_ctx_finish
because removing all such instances causes the code to break.
2017-10-18 17:12:19 -07:00
Vijay Pai 53cec0fc8f Update create_channel.cc 2017-10-17 06:46:19 -07:00
Krasimir Georgiev 1f42fae4c5 Fix initialization bug in channel creation 2017-10-17 08:38:20 +02:00
Craig Tiller a19a073ebc Workaround bug for a moment 2017-10-13 11:38:37 -07:00
murgatroid99 9887379158 Update version to 1.8.0-dev, update g word to 'generous' 2017-10-02 17:31:33 -07:00
ncteisen 520cc8f555 Fix ClangTidy 2017-09-29 10:37:45 -07:00
Mark D. Roth ede8ed2156 Merge pull request #12374 from markdroth/plugin_credentials_api_fix
Change plugin credentials API to support both sync and async modes
2017-09-29 07:26:50 -07:00
yang-g cfd20c4262 Add CompositeCallCredentials 2017-09-28 22:00:35 -07:00
Mark D. Roth 6456e494a8 Merge remote-tracking branch 'upstream/master' into plugin_credentials_api_fix 2017-09-28 15:16:14 -07:00
Mark D. Roth 61b26f97b0 Code review changes. 2017-09-28 08:40:03 -07:00
Juanli Shen fe40815682 Readd grpclb fallback 2017-09-27 12:27:20 -07:00
Mark D. Roth b4c01f9e29 Merge remote-tracking branch 'upstream/master' into plugin_credentials_api_fix 2017-09-25 12:36:30 -07:00
Vijay Pai 2046d0b3c5 Add unary call mode to GenericStub to allow generic RPC with 1 CQ trip 2017-09-21 22:23:44 -07:00
Vijay Pai a44cffa11f Base the new SerializationTraits API on implicit type conversion rather than SFINAE 2017-09-21 13:12:52 -07:00
Vijay Pai efce6e1e50 Revert "Revert "Allow SerializationTraits to use grpc::ByteBuffer rather than only grpc_byte_buffer"" 2017-09-21 13:12:52 -07:00
Yash Tibrewal 9eb8672bbe Removing deprecated string to char * conversions 2017-09-17 23:55:58 -07:00
Vijay Pai 4b047a3bff Construction of streams shouldn't require triggering async ops 2017-09-14 17:55:13 -07:00
Ken Payson 01e83b55e4 Revert "Add fallback (use backends from resolver if can't reach balancer) to grpclb."
This reverts commit aba0a0a544.
2017-09-13 19:45:07 -07:00
Juanli Shen aba0a0a544 Add fallback (use backends from resolver if can't reach balancer) to grpclb. 2017-09-11 09:22:48 -07:00
Mark D. Roth 0aee498525 Merge remote-tracking branch 'upstream/master' into plugin_credentials_api_fix 2017-09-08 08:01:29 -07:00
Craig Tiller 9e3af382fb Merge github.com:grpc/grpc into stats_histo 2017-09-07 14:47:55 -07:00
Mark D. Roth 8941f607d6 Merge pull request #12369 from markdroth/call_combiner
Second attempt at call combiner PR
2017-09-07 14:43:47 -07:00
Yuchen Zeng b6ef6e9ff5 Merge pull request #12080 from y-zeng/connectivity
Reconnect channels automatically in C++ clients
2017-09-07 12:59:41 -07:00
Mark D. Roth 1ff6ee12cc clang-format 2017-09-06 14:56:18 -07:00
Craig Tiller 3749a6d417 Merge github.com:grpc/grpc into stats_histo 2017-09-06 13:28:22 -07:00
Yang Gao 5314616e24 Merge pull request #12341 from yang-g/extern
Log offending ops and error code before crashing the server
2017-09-05 21:43:48 -07:00
yang-g d3cbd72d5f Make grpc_call_log_batch take const char* 2017-09-05 13:42:35 -07:00
Yuchen Zeng 26b0a34fbe Address review comments 2017-09-05 13:32:44 -07:00
Yuchen Zeng 5150cbd02d Fix timer shutdown process 2017-09-01 23:05:15 -07:00
Mark D. Roth 2caf021772 Change plugin credentials API to support both sync and async modes. 2017-09-01 15:04:13 -07:00
Mark D. Roth 764cf04a13 Revert "Revert "Implement call combiner""
This reverts commit bf19961d0a.
2017-09-01 09:00:06 -07:00
Craig Tiller 2897235609 Expose stats into qps_driver 2017-08-31 15:52:57 -07:00
kpayson64 451b92a754 Merge pull request #12306 from kpayson64/ref_counting_slices
Give ownership of byte buffers to write ops
2017-08-31 12:17:03 -07:00
Mark D. Roth 8d51e8d17e Merge pull request #12331 from markdroth/c++_filter_api_fix
Add recv_message() method to TransportStreamOpBatch class.
2017-08-31 10:05:47 -07:00
yang-g 66e6c23372 Log offending ops and error code before crashing the server 2017-08-30 16:09:36 -07:00
Ken Payson 4754398f81 Clang_format 2017-08-30 08:31:38 -07:00
Mark D. Roth 196fa2e154 Add recv_message() method to TransportStreamOpBatch class. 2017-08-30 07:34:03 -07:00
yang-g dce6fc6a48 Add missing extern C 2017-08-29 21:27:08 -07:00
Mark D. Roth bf19961d0a Revert "Implement call combiner" 2017-08-29 16:59:07 -07:00
Ken Payson 567e0f1eb6 Have write ops take ownership over slices 2017-08-29 09:21:22 -07:00
Yuchen Zeng 4a11ecc076 Add ChannelConnectivityWatcher::Ref()/Unref() 2017-08-25 15:17:45 -07:00
Mark D. Roth 76e264b8df Implement call combiner. 2017-08-25 09:03:33 -07:00
Yuchen Zeng ba23e799dc Sanity fixes 2017-08-24 23:13:09 -07:00
Yuchen Zeng 504be5c693 Privatize ChannelConnectivityWatcher members 2017-08-24 17:47:43 -07:00
Yuchen Zeng ddaef3e325 Remove non-POD global variables 2017-08-24 15:34:52 -07:00
Yuchen Zeng f1d50983ae Document GRPC_DISABLE_CHANNEL_CONNECTIVITY_WATCHER 2017-08-24 12:08:03 -07:00
Yuchen Zeng 33845d08d4 Check env variable 2017-08-24 03:28:51 -07:00
Yuchen Zeng b4481a9a13 Share one monitoring thread between channels 2017-08-24 03:13:42 -07:00
Yuchen Zeng bfb4e06e3c Check connectivity intermittently 2017-08-23 23:47:15 -07:00
Yuchen Zeng 4d88416c11 Remove atm in ChannelConnectivityWatcher 2017-08-23 15:20:01 -07:00
Yuchen Zeng a2e506e8d9 Avoid using timers 2017-08-22 20:46:52 -07:00
Yuchen Zeng 6a6d618034 Prevent watching unsuppoted channels 2017-08-22 18:56:25 -07:00
Yuchen Zeng 2411bacd04 Address review comments 2017-08-22 18:56:25 -07:00
Yuchen Zeng ee3e3310bb Add reconnect channel tests 2017-08-22 18:56:25 -07:00
Yuchen Zeng be9b814240 Add ChannelConnectivityWatcher 2017-08-22 18:56:25 -07:00
David Garcia Quintas 713597f1cd Master version bump to 1.7.x 2017-08-16 20:59:05 -07:00
Sree Kuchibhotla 419b617a95 Fix thread avalances in thread manager 2017-08-09 20:40:24 -07:00
Vijay Pai ce58cf8c44 Add Slice constructors to match all grpc_slice cases 2017-08-04 07:48:48 -07:00