[ 
https://issues.apache.org/jira/browse/ARROW-14662?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17443154#comment-17443154
 ] 

David Li commented on ARROW-14662:
----------------------------------

Looking at the Ubuntu 20.04 package:
 * Ubuntu ships gRPC 1.3 (yikes!) so we build gRPC from source.
 * We can't/don't want to distribute libgrpc++.so, so we link gRPC statically.
 * We include gRPC and Protobuf in libarrow_bundled_dependencies.a

So we should note that applications expecting to use solely Arrow Flight, but 
not Protobuf or gRPC, can use either the dynamic or static libraries, but 
applications that may include either Protobuf or gRPC must (1) use the static 
libraries and (2) use the same version of Protobuf as Arrow. That's rather a 
pain and it may be easier to just build Arrow from source…

> [C++][Documentation] Note caveats of a combined gRPC/Flight server
> ------------------------------------------------------------------
>
>                 Key: ARROW-14662
>                 URL: https://issues.apache.org/jira/browse/ARROW-14662
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++, Documentation
>            Reporter: David Li
>            Assignee: David Li
>            Priority: Major
>
> See [this GitHub issue|https://github.com/apache/arrow/issues/11657]: when 
> building a combined gRPC/Flight service, care must be taken not to link gRPC 
> twice on accident. This is noted briefly in the 
> [docstring|https://github.com/apache/arrow/blob/3e554c3703557b422fd762fe9c3844e514b32149/cpp/src/arrow/flight/server.h#L152-L159]
>  but we should be more detailed and perhaps add prose documentation. We 
> should also note this in the 
> [example|https://github.com/apache/arrow/blob/3e554c3703557b422fd762fe9c3844e514b32149/cpp/examples/arrow/flight_grpc_example.cc].



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to