Files
arrow/python/examples
David Li d1848c8586 ARROW-6855: [FlightRPC][C++][Python] Flight middleware for C++/Python
This is likely not fully compatible with Java yet (I'm aware of one edge case where gRPC-Java does something different than gRPC-C++) - will address in a follow up with integration testing ([ARROW-5875](https://issues.apache.org/jira/browse/ARROW-5875)).

Compared to the Java implementation, this one can make guarantees about which thread things are run on (so you can and must use thread-locals to communicate with application code from middleware).

This uses the experimental gRPC interceptor interface to implement client middleware.

Travis build: https://travis-ci.com/lihalite/arrow/builds/129755428
AppVeyor build: https://ci.appveyor.com/project/lihalite/arrow/builds/27777244

Closes #5552 from lihalite/flight-middleware-cpp and squashes the following commits:

03921d455 <David Li> Fix warnings/tests
69505a8db <David Li> Update middleware example
564783797 <David Li> Require headers to be ASCII
e47d1709f <David Li> Don't rely on thread locals for server middleware
f6d314bd1 <David Li> Remove unnecessary files
d036c74d5 <David Li> Get rid of header iterator
7716ade3b <David Li> Address review feedback
99cf60f19 <David Li> Fix Flight tests on Windows
362341ef2 <David Li> Fix lints
65459ad97 <David Li> Add middleware to Flight docs
0be4009db <David Li> Fix Python TLS test
9e23952b9 <David Li> Fix Python middleware
a1d9b5da7 <David Li> Add example of Flight/Python middleware
260deb84b <David Li> Rework C++ client middleware to require infallability
530e6fcc8 <David Li> Rework C++ middleware to require infalliability
53646bc6c <David Li> ARROW-6074:  Flight middleware

Authored-by: David Li <li.davidm96@gmail.com>
Signed-off-by: Wes McKinney <wesm+git@apache.org>
2019-10-11 09:21:18 -05:00
..