aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/surface/server.c
Commit message (Collapse)AuthorAge
* Add missing new-lines at end of fileGravatar Craig Tiller2015-02-18
|
* Update copyright to 2015Gravatar Craig Tiller2015-02-18
|
* Merge github.com:grpc/grpc into c++apiGravatar Craig Tiller2015-02-17
|\ | | | | | | | | Conflicts: src/core/surface/server.c
* | Add TODOGravatar Craig Tiller2015-02-17
| |
| * Fix shutdown semantics.Gravatar Craig Tiller2015-02-17
| | | | | | | | Document what they should be, ensure they're triggered, and fix what was broken.
* | Fix tsan reported raceGravatar Craig Tiller2015-02-12
| |
* | Fix end2end leaksGravatar Craig Tiller2015-02-12
| |
* | Multi-completion-queue-serverGravatar Craig Tiller2015-02-12
| | | | | | | | | | | | Allow binding a different completion queue to each registered method. This will allow multiplexing for the C++ server between sync & async methods more easily.
* | Fix server shutdown issuesGravatar Craig Tiller2015-02-11
| | | | | | | | First end2end test passes
* | Fix hash tableGravatar Craig Tiller2015-02-11
| |
* | Fix typo causing crashGravatar Craig Tiller2015-02-11
| |
* | Just use one completion queue per server for delivering completionsGravatar Craig Tiller2015-02-11
| | | | | | | | | | This simplifies (drastically) the polling story, although will slightly complicate mixing sync & async servers - but we're not there yet.
* | Implement FinalizeResultGravatar Yang Gao2015-02-11
| |
* | Allow two completion queues on request callGravatar Craig Tiller2015-02-10
| | | | | | | | | | One for the new rpc notification, the other is bound to the new call. This will make async c++ soooo much easier.
* | First draft registered methodsGravatar Craig Tiller2015-02-10
| |
* | Remove dead codeGravatar Craig Tiller2015-02-10
| |
* | Rewrite server request startup pathGravatar Craig Tiller2015-02-10
|/ | | | | Stub in registered methods, cleanup to the point I understand this code again.
* FixesGravatar Craig Tiller2015-02-05
|
* Merge github.com:google/grpc into async-api-newGravatar Craig Tiller2015-02-05
|\
| * Fix memory leak on server channelsGravatar Craig Tiller2015-02-05
| |
* | First test passesGravatar Craig Tiller2015-02-03
| |
* | Updated the first test (which fails)Gravatar Craig Tiller2015-02-03
| |
* | Flesh out batch APIGravatar Craig Tiller2015-02-03
|/
* Fix server after mergeGravatar Craig Tiller2015-02-02
|
* Merge branch 'async-api-prep' of github.com:ctiller/grpc into async-apiGravatar Craig Tiller2015-02-02
|\
| * Prepare for the new batch call API.Gravatar Craig Tiller2015-02-02
| | | | | | | | | | Rename all core API functions that are on their way to deprecation with an _old tag across all wrappings.
* | Fix up function signaturesGravatar Craig Tiller2015-01-30
| |
* | Fix memory leakGravatar Craig Tiller2015-01-30
| |
* | Free host, path stringsGravatar Craig Tiller2015-01-30
| |
* | Fix somewhat obvious errorGravatar Craig Tiller2015-01-29
| |
* | Fix server startingGravatar Craig Tiller2015-01-29
| |
* | Fix leakGravatar Craig Tiller2015-01-29
| |
* | Fix leakGravatar Craig Tiller2015-01-29
| |
* | Spam cleanupGravatar Craig Tiller2015-01-29
| |
* | Fix refcount leak on server rpc_newGravatar Craig Tiller2015-01-29
| |
* | Allocate required memoryGravatar Craig Tiller2015-01-28
| |
* | clang-formatGravatar Craig Tiller2015-01-27
| |
* | First compiling version of the new C api.Gravatar Craig Tiller2015-01-27
|/
* run clang-formatGravatar Yang Gao2015-01-26
|
* Move string.h to internal codeGravatar Craig Tiller2015-01-23
|
* Use clang-format-3.5Gravatar Craig Tiller2015-01-18
|
* Add an optional server shutdown event.Gravatar Craig Tiller2015-01-16
| | | | | | Allows servers to expedite shutdown once all in-progress calls are completed. We may want to eventually remove grpc_server_shutdown in preference to this.
* clang-format codebaseGravatar Craig Tiller2015-01-13
|
* Remove libevent.Gravatar ctiller2015-01-09
| | | | | | | | | | | | | | | | | | | | | | | Fixed any exposed bugs across the stack. Add a poll() based implementation. Heavily leverages pollset infrastructure to allow small polls to be the norm. Exposes a mechanism to plug in epoll/kqueue for platforms where we have them. Simplify iomgr callbacks to return one bit of success or failure (instead of the multi valued result that was mostly unused previously). This will ease the burden on new implementations, and the previous system provided no real value anyway. Removed timeouts on endpoint read/write routines. This simplifies porting burden by providing a more orthogonal interface, and the functionality can always be replicated when desired by using an alarm combined with endpoint_shutdown. I'm fairly certain we ended up with this interface because it was convenient to do from libevent. Things that need attention still: - adding an fd to a pollset is O(n^2) - but this is probably ok given that we'll not use this for multipolling once platform specific implementations are added. - we rely on the backup poller too often - especially for SSL handshakes and for client connection establishment we should have a better mechanism ([] [] - Linux needs to use epoll for multiple fds, FreeBSD variants (including Darwin) need to use kqueue. ([] [] - Linux needs to use eventfd for poll kicking. ([] Change on 2015/01/07 by ctiller <ctiller@google.com> ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=83461069
* Add a --forever flag, to continuously run tests as things change.Gravatar ctiller2015-01-09
| | | | | | | Change on 2015/01/07 by ctiller <ctiller@google.com> ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=83451760
* Remove libevent.Gravatar ctiller2015-01-08
| | | | | | | | | | | | | | | | | | | | | | | Fixed any exposed bugs across the stack. Add a poll() based implementation. Heavily leverages pollset infrastructure to allow small polls to be the norm. Exposes a mechanism to plug in epoll/kqueue for platforms where we have them. Simplify iomgr callbacks to return one bit of success or failure (instead of the multi valued result that was mostly unused previously). This will ease the burden on new implementations, and the previous system provided no real value anyway. Removed timeouts on endpoint read/write routines. This simplifies porting burden by providing a more orthogonal interface, and the functionality can always be replicated when desired by using an alarm combined with endpoint_shutdown. I'm fairly certain we ended up with this interface because it was convenient to do from libevent. Things that need attention still: - adding an fd to a pollset is O(n^2) - but this is probably ok given that we'll not use this for multipolling once platform specific implementations are added. - we rely on the backup poller too often - especially for SSL handshakes and for client connection establishment we should have a better mechanism ([] [] - Linux needs to use epoll for multiple fds, FreeBSD variants (including Darwin) need to use kqueue. ([] [] - Linux needs to use eventfd for poll kicking. ([] Change on 2015/01/07 by ctiller <ctiller@google.com> ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=83461069
* Introduce the (outside-of-iomgr) pollset API.Gravatar ctiller2014-12-19
| | | | | | | | | | | | | This CL introduces the public side of this interface. There will need to be an iomgr-private API also, but this will be a per-implementation API and so is not covered here. I've taken care of wiring the interface through the codebase in the manner that I expect it will be used. Change on 2014/12/17 by ctiller <ctiller@google.com> ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=82376987
* Tell call/channel op handlers who is invoking them.Gravatar ctiller2014-12-11
| | | | | | | | | | This change adds a parameter to all op handlers specifying the invoking filter. It will be used to allow client_channel to distinguish which child channel is disconnecting or going away. Change on 2014/12/10 by ctiller <ctiller@google.com> ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=81823231
* Move status 200 setting into http_server_filter and keep a fixed mdelem for itGravatar klempner2014-12-10
| | | | | | | | rather than allocating a separate one for each rpc. Change on 2014/12/10 by klempner <klempner@google.com> ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=81814150
* Introducing iomgr.Gravatar ctiller2014-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | Move eventmanager and platform dependent endpoint functionality into a single library called 'iomgr'. This is primarily to prepare for a Windows port - where posix socket semantics lead to poor quality code. Mostly this is a code movement CL, with some small changes to help prepare the way for porting: - em style fd objects can only be held internally in iomgr, and own their memory - added grpc_iomgr_create_endpoint_pair() to accomodate the common pattern of creating a tcp endpoint from the output of socketpair - this will help keep our tests portable - separated em alarm interface into a separate file, as this part of event manager is needed higher up the stack - made the eventmanager bits a true singleton, simplifying API's across the stack as there's no longer a reason to carry a pointer there. Initial design document is here: https://docs.google.com/document/d/1VmafcHvvrP5kwtQkz84R5yXF7u7fW-9Pn0bkSUQHDt8/edit?disco=AAAAARNByxg Change on 2014/12/09 by ctiller <ctiller@google.com> ------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=81716456