Skip to content

datafusion-examples crate fails after upgrade to arrow 5.1.0 #817

@alamb

Description

@alamb

Describe the bug
The tests in the datafusion-examples fail after upgrade to arrow 5.1.0 (they worked on 5.0.0).

I believe the issue is some incompatible version of tonic -- the 5.1.0 release updated tonic

To Reproduce

cargo update # <-- critical to get arrow 5.1.0 update
cargo test --all

Results in these failures:

   Compiling datafusion-examples v4.0.0-SNAPSHOT (/Users/alamb/Software/arrow-datafusion/datafusion-examples)
error[E0271]: type mismatch resolving `<Pin<Box<(dyn futures::Stream<Item = std::result::Result<HandshakeResponse, Status>> + Sync + std::marker::Send + 'static)>> as futures::Stream>::Item == std::result::Result<HandshakeResponse, tonic::status::Status>`
   --> datafusion-examples/examples/flight_server.rs:40:5
    |
40  | /     type HandshakeStream = Pin<
41  | |         Box<dyn Stream<Item = Result<HandshakeResponse, Status>> + Send + Sync + 'static>,
42  | |     >;
    | |______^ expected struct `tonic::status::Status`, found struct `Status`
    | 
   ::: /Users/alamb/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-flight-5.1.0/src/arrow.flight.protocol.rs:514:52
    |
514 |           type HandshakeStream: futures_core::Stream<Item = Result<super::HandshakeResponse, tonic::Status>>
    |                                                      ------------------------------------------------------- required by this bound in `arrow_flight::flight_service_server::FlightService::HandshakeStream`
    |
    = note: expected enum `std::result::Result<_, tonic::status::Status>`
               found enum `std::result::Result<_, Status>`
    = note: perhaps two different versions of crate `tonic` are being used?

Expected behavior
All tests pass

Additional context
Add any other context about the problem here.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions