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)