-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to arrow 20.0.0 #3007
Upgrade to arrow 20.0.0 #3007
Conversation
I fixed a lot of the obvious errors, but I wasn't sure what to do about
and
CC @andygrove and @alamb - if you guys have any advice, it would be appreciated. |
If I understand correctly, the other XXXArray types have iterators that return the primitive representations (i.e. https://github.com/apache/arrow-rs/blob/master/arrow/src/util/decimal.rs#L132 |
If I revert the change here: https://github.com/apache/arrow-rs/pull/2140/files to:
vs
It compiles and happily runs. I'm not sure if that's the correct fix though. |
CC @HaoYang670 |
I think we need to just change all these: https://github.com/apache/arrow-datafusion/blob/55a12869f32644ed87d69d9b7617372db5103fb8/datafusion/physical-expr/src/expressions/binary.rs#L260 From |
But that ripples up to ScalarValues and throughout the codebase quickly. |
Have you tried calling |
👋🏻 hi @avantgardnerio I was able to successfully upgrade |
Thank you @avantgardnerio and @stuartcarnie -- this is so great. I have normally been doing this work during / as part of the release process (e.g. apache/arrow-rs#2172) THANK YOU so much for getting a start on it earlier. |
100%. Thank you so much! |
Well, I wanted one of the arrow-rs features :). But really, thanks to @andygrove and @stuartcarnie for figuring out how to make it work. I'm still learning. I'll look over the work the others did and familiarize myself with the solution so I can maybe not get stuck next time. |
I did, but however I tried to do it rippled up through the codebase and affected lots of places. @andygrove was able to figure it out. Thank you both for your help! |
9783099
to
dae8678
Compare
@andygrove and @alamb looks like the checks are failing because lack of |
Yes, prost is no longer bundling protoc. It looks like this repo will need changes similar to these? apache/arrow-rs#2280 |
@avantgardnerio I can help mess around with (aka help with) this PR as part of preparing the arrow release candidate, which I will likely do this Friday |
I'd love to get this one in first, but I'm sure there's a lot of people with a lot of interests and they all need to be considered: apache/arrow-rs#2309 I'm happy to help in any way I can with the release. |
520c5fa
to
b015c83
Compare
@tustvold I think I'm stuck on these failures:
It appears they are because this branch is referencing |
I'll try and give it a look on monday. Thanks @avantgardnerio |
cranelift-module = { version = "0.86.1", optional = true } | ||
object_store = { version = "0.3", optional = true } | ||
object_store = { git = "https://github.com/apache/arrow-rs.git", rev = "30c94dbf1c422f81f8520b9956e96ab7b53c3f47", features = [], optional = true } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't believe we intend to release object_store as part of arrow 20, and so I would back out this change
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here's an alternative version with object_store
not upgraded, but I struggled with this too: #3083
@@ -75,10 +75,10 @@ lazy_static = { version = "^1.4.0" } | |||
log = "^0.4" | |||
num-traits = { version = "0.2", optional = true } | |||
num_cpus = "1.13.0" | |||
object_store = "0.3.0" | |||
object_store = { git = "https://github.com/apache/arrow-rs.git", rev = "30c94dbf1c422f81f8520b9956e96ab7b53c3f47", features = [], optional = false } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto
1d61ade
to
0b05aa2
Compare
fix decimal (#4) Fix human error Patch crates io to fix build (#5) * fix decimal * patch crate versions Patch objectstore Test in CI Undo override? Fix more errors Fix last error? Formatting Clippy Fixes Fix refs Able to get session context, but JDBC driver hung Upgrade to arrow 20 Upgrade to RC2 Formatting Fix some imports Install protoc Try platform agnostic path Debug in CI :( Debug in CI :( Debug in CI :( Not worth it, just separate builds Variables Fixes Fix windows? Fix windows? Hackily fix windows Down to 1 failure Fix protoc All? tests pass Formatting
0b05aa2
to
ebc26a7
Compare
Codecov Report
@@ Coverage Diff @@
## master #3007 +/- ##
==========================================
- Coverage 85.93% 85.91% -0.02%
==========================================
Files 289 289
Lines 52101 52116 +15
==========================================
+ Hits 44774 44778 +4
- Misses 7327 7338 +11
📣 Codecov can now indicate which changes are the most critical in Pull Requests. Learn more |
I got all the tests passing except windows. I installed a VM and tried to fix that too, but I'm getting lots of interesting errors with paths like |
The path handling changed upstream, in particular apache/arrow-rs#2269, I could definitely see this having downstream implications. There is an outstanding PR apache/arrow-rs#2371 that may help, but I would strongly advise against upgrading object_store as part of this PR. Once we have a RC for the next object_store version, I'll work on updating DataFusion to it including all the various windows path nonsense |
Closing in favor of #3083 |
Which issue does this PR close?
Closes #3006.
Rationale for this change
We'll have to do it sooner or later, but mostly I want the new authentication capabilities in the
FlightSqlServer
code.What changes are included in this PR?
An attempt at upgrading to the latest arrow.
Are there any user-facing changes?
It doesn't (presently) compile, so I'm making a draft PR to seek input on CI failures.