You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Wes McKinney (JIRA)" <ji...@apache.org> on 2019/01/29 16:48:00 UTC
[jira] [Assigned] (ARROW-4213) [Flight] C++ and Java
implementations are incompatible
[ https://issues.apache.org/jira/browse/ARROW-4213?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Wes McKinney reassigned ARROW-4213:
-----------------------------------
Assignee: David Li
> [Flight] C++ and Java implementations are incompatible
> ------------------------------------------------------
>
> Key: ARROW-4213
> URL: https://issues.apache.org/jira/browse/ARROW-4213
> Project: Apache Arrow
> Issue Type: Bug
> Components: FlightRPC
> Reporter: David Li
> Assignee: David Li
> Priority: Major
> Labels: flight, pull-request-available
> Fix For: 0.13.0
>
> Time Spent: 5h 20m
> Remaining Estimate: 0h
>
> A C++ client cannot request streams from a Java service, nor can it decode the schema from GetFlightInfo.
> Schema: in Java, GetFlightInfo encodes the schema directly via flatbuffers. C++ expects it to be encoded as an IPC message. This isn't a problem in Java as a method exists to decode such schemas, but in C++ the API for reading such a schema isn't really exposed. I'm willing to submit a patch for this, but it's not clear to me which scheme is preferred.
> Streams: in Java, DoGet starts with an ArrowMessage containing a schema. C++ does not expect this and segfaults when it tries to decode the message as a record batch. Based on the presentations I've seen, I think C++ is in the wrong here; I have a patch to fix this that I could clean up and submit.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)